Sun and Moon by a mile. XY were terrible Pokemon games.
I don't think they were terrible, just kinda stock.
For me, it was a great reintroduction to the series; hadn't played any since Ruby and Sapphire. And they introduced some neat features. But I can definitely see cracks in the seams, Team Flare being the most glaring one in my opinion.
Honestly, I feel that every mainline Pokemon game serves as adequate introductions, so I consider that the status quo. It wasn't just Flare. The whole game felt like it was talking down to the player narratively. Most of the Gym Leaders and Elite Four were forgettable. The supporting cast of friends felt like annoying children that you were babysitting outside of Serena/Calem, who just felt personality-less.
Sycamore was cool. Alexa was cool. Sina and Dexio were inoffensive. Viola and Korrina were fine. Xerosic was fine. Malva was awesome, but suffered a serious case of dropped potential. Oh, and everything infolving the Looker post game quest was awesome. Everyone else was either terrible or forgettable.
If you care about more than competitive battling or "catching them all," XY were abysmal additions in almost every regard.
Oh, and this isn't directed at you at all, but Hau was fine. And he definitely wasn't "comic relief." He's just a laid back dude with a good attitude. He's far from my favorite rival, but there was nothing offensive about him at all. He was a very passive character in the plot, but he had specific goals and a believably character arc. He's a more fleshed out and likable character than most characters in Pokemon. Just because he doesn't spit in your face and insult you doesn't mean that he's a bad companion.
The only truly bad characters in the game were Gladion and Lusamine, and Gladion was easy to spot by a mile, so I ain't even mad.