A spectacular overhead kick from Christian Benteke midway through the first half cancelled out Wes Hoolahan's well-worked opener, before the Belgian powered home a header two minutes later to give his side the lead.
Hoolahan spurned a great chance to level things soon afterwards, before Leandro Bacuna rounded off a wonderful sweeping counterattack with a curled finish.
Things got even worse for Norwich just before the break when Sebastien Bassong turned Fabian Delph's cross into his own net.
The victory eases the pressure on Villa boss Paul Lambert, ending a run of four games without a win, while condemning Norwich to its fifth consecutive away defeat.
Lambert had been keen to diffuse any tensions with his former employer in the build-up to the clash, which were rekindled after a publicly unsuccessful pursuit of Hoolahan back in January.
It was the 31-year old who broke the deadlock within the opening three minutes.
The onrushing Gary Hooper beat the offside trap to race away from the defense, before squaring to Hoolahan, who made no mistake from close range.
Shell-shocked Villa struggled to break down the visiting side for long periods of the first half, but the club was level 20 minutes before the break in spectacular fashion.
Ron Vlaar's long ball found Benteke in the box and, with his back to goal, the striker took a neat touch before lashing a stunning overhead kick past John Ruddy.
Benteke was on hand again two minutes later, shaking off Bassong in the area to head home Ashley Westwood's corner.
Hoolahan nearly leveled just a few minutes after, playing a one-two with Hooper to cut open the defense before being denied by a superb double save from Brad Guzan.
Norwich was made to pay for that missed opportunity eight minutes before halftime, when a lightning-quick counterattack saw Andreas Weimann play in Bacuna, who curled a terrific effort past Ruddy.
The home side had a fourth just before the break, when Delph's cross was turned into his own net by Bassong.
Villas should have been celebrating again five minutes into the second half when a teasing Delph cross found the unmarked Gabriel Agbonlahor in the box, where he inexplicably headed wide.
Weimann spurned another decent opportunity 15 minutes later, although Villa seemed content to ease off as the game reached its conclusion.
Norwich brought on Sweden striker Johan Elmander in an attempt to inspire a fightback, and he had a chance to reduce the deficit late on before skewing wide after after good work from Martin Olsson.
Hooper went close five minutes from time, forcing a fine save from Guzan after being played clean through, but that miss summed up a frustrating game for the visitors.