I'm going to have to go with Sonic myself, despite liking both characters. While I like Mario, I've never really felt as captivated by a Mario game since Super Mario RPG introduced a fantastic world and characters both menacing and adorable. After that, Mario decided to pander to a younger and younger audience, defanging their enemies to the point where it's impossible to take them seriously. The last time I felt any kind of awe or agency fighting a Mario boss was the rock monster in Galaxy. Also, other enemies from previous games tend to get swept under the rug (Smithy, Crackletta, etc.) and never seen again, robbing the games of any kind of continuity.
Sonic, for his many missteps, has a wide variety of enemies and monsters to handle. Despite struggling with continuity issues that Mario did (disappearing enemies and vague timelines), it was very clear that they at least were attempting to have a linking narrative. On top of that, the aesthetics for the game didn't pander to just the youngest of children, but attempted to be more complex in some games. I think that if Sonic Team could write to save their lives, they would've had something interesting to work with.