Even so, I still feel it doesn't get the love it actually deserves. It has a base 147 Atk, higher than even Pokemon like Landorus-T (145) and just under major legendaries like normal Groudon (150). It also packs a respectable base Speed 97(?) (if I remember correctly), which allows it to outspeed the likes of Darmanitan, Heracross, Chandelure, Kingdra, Lucario, Krookodile, Nidoking, Roserade, Porygon-Z, Rotom-H, and Toxicroak if none are Scarf.
In terms of move pool, Haxorus doesn't have much to run, but it is enough. In terms of set up moves, it gets both Swords Dance and Dragon Dance, the latter being a nice niche over Garchomp (I wish so much the fake event had been real). It has access to nice STAB in Outrage if you prefer power or Dragon Claw if you'd prefer not be locked it. Then, to handle the pesky Fairy types that roam around, Haxorus has access to Posion Jab, which hits relatively hard boosted and unboosted. I think he also gets Iron Head, which can be used instead to also hit Ice-types super-effectively, but if you're in OU, you might prefer being able to hit Azumarill hard. Both 100% viable. For the last slot, I'd say always Earthquake. EQ lets Haxorus handle all the grounded Steel types running around. If one chooses to use Haxorus in OU, I'd recommend accompanying him with a Magnezone to get rid of Skarmory, Haxorus's greatest enemy by far in OU.