Gabby Agbonlahor confirmed his new status as Villa's top Premier League scorer as Paul Lambert's men took a giant step towards Barclays Premier League survival.
Having broken Dwight Yorke's record with his 61st league goal in Monday's 6-1 thrashing of Sunderland, Agbonlahor hit number 62 to open the scoring in the 55th minute at Carrow Road.
And although Grant Holt equalised from the penalty spot, Agbonlahor grabbed a dramatic 89th-minute winner to take him to 63 goals and, more importantly, Villa to 40 points.
Safety is still not absolutely guaranteed but the travelling contingent clearly have no doubts as they chanted "We are staying up" long after the final whistle.
With Wigan winning at West Brom, this was a massive result for the boys in claret and blue and the outcome should really have been more emphatic, Christian Benteke and Andreas Weimann both squandering glorious second half chances.
The atmosphere all around the ground was electric, although the early exchanges were far too fraught to match the wall of sound.
The home side made the early running without creating a clear-cut chance, and it was Villa who produced the first goal attempt, Agbonlahor's powerful 25-yard drive striking Sebastien Bassong's legs and going behind for a corner.
Then Yacouba Sylla played the ball wide to Weimann, who cut in from the right to hit a low left-foot shot which was clutched by Mark Bunn.
Brad Guzan's first moment of concern was to hold a 23rd-minute downward header from defender Ryan Bennett following a deep free-kick from the right, and four minutes later Villa were forced into a substitution, Eric Lichaj replacing Matt Lowton, who had taken a blow to his right thigh.
Guzan had to be alert in the 34th minute, making a diving save to keep out Russell Martin's fierce drive after Villa's defensive wall had initially blocked Anthony Pilkington's free-kick.
But Bunn was equally impressive a couple of minutes later, the home keeper holding Weimann's low cross at the foot of his near post following a nice build-up involving Joe Bennett, Agbonlahor and Benteke.
The action was now far more creative, and a flowing Canaries move ended with Holt stopping to send a header over the bar when full-back Javier Garrido crossed menacingly from the left.
If that indicated the home side were getting on top, though, Villa were having none of it.
Almost immediately, Agbonlahor's right-wing centre clipped off Garrido and struck the top of the bar, and in first half stoppage time Ron Vlaar and Agbonlahor both had shots charged down.
Villa should really have been ahead just 20 seconds into the second half, Benteke cleverly flicking the ball around Ryan Bennett, only to mar his invention with a weak 15-yard shot which Bunn saved comfortably.
Benteke will also feel he should have done better with a shot which was well off target, although Holt was equally wayward when his long-range effort dropped only just short of the executive boxes behind the goal.
Agbonlahor, thankfully, had no such problems when he opened the scoring in the 55th minute.
Collecting the ball just inside Villa's half, he made a darting run through the heart of the home defence before unleashing a superb 25-yard shot which flew across Bunn's diving body and into the corner of the net.
The visitors were now playing with plenty of confidence, Nathan Baker having a glancing header saved by Bunn following a Bennett free-kick,although both sides were then guilt of bad misses.
Villa's relief when the unmarked Wes Hoolahan headed wide of the far post was quickly replaced by frustration as Weimann, looking a certain scorer from Agbonlahor's deep left-wing centre, was unable to keep his six-yard volley down.
As Lambert's men continued to dominate, Fabian Delph curled a shot over the bar after Agbonlahor had released him with a clever flick.
Then Benteke's equally fine flick set up the club's leading Premier League marksman for a shot which went just beyond the far post.
After Benteke had been booked for hitting out at Bassong - an offence which might easily have earned him a red card - Norwich were back on level terms.
Bennett impeded Snodgrass as the winger cut in from the right, and Holt sent Guzan the wrong way with a firmly-struck spot kick.
But just when Villa were starting to rue their missed chances earlier in the half, Agbonlahor pounced with his second.
Westwood delivered a superb pass from the half-way line and the striker sprinted through the right-hand channel to send a low angled shot into the far corner as Bassong made a desperate challenge.
Even then, there was stoppage time drama, Holt getting in front of Guzan to send a header just wide, but Villa held firm for a vital victory.
Norwich City: Bunn; Martin, R Bennett, Bassong, Garrido (Jackson 90); Snodgrass (E Bennett 85), Howson, Hoolahan (Kamara 71), Johnson, Pilkington; Holt. Unused subs: Camp, Whittaker, Barnett, Tetley.
Villa: Guzan; Lowton (Lichaj 27), Vlaar, Baker, J Bennett; Sylla (Homan 78), Westwood, Delph, Weimann, Benteke, Agbonlahor. Unused subs: Given, Bent, N'Zogbia, Bowery, Bannan.