CITY fought back from a goal down to claim a priceless Barclays Premier League victory over bottom side Wolves in a tense match which saw Grant Holt score the two goals that won it for City - and then get sent off.
Matt Jarvis stunned the home crowd by firing a battling Wolves side in front in the 25th minute - but the visitors' celebrations were cut short within a minute as Holt was put through by Simeon Jackson and lobbed the ball over Hennessey before heading it into the empty net.
That high-quality strike was added to from the penalty spot by the City skipper just before half-time after Eggert Jonsson was adjudged to have handled a shot from Hoolahan.
The second half was a tense affair, with the home supporters' nerves not aided by Grant Holt receiving a second yellow card for a sliding tackle from behind on Kightly with just over five minutes of normal time remaining.
But City hung on tenaciously for three points which take them one giant stride closer to assuring their Premier League status for another season.
City Manager Paul Lambert told Canaries.co.uk afterwards: "It was a huge win because of the magnitude of the game. Wolves came here just like Wigan a couple of weeks ago and were fighting for their lives.
"It was never going to be easy, and so it proved, but overall I thought we deserved to win the game.
"I thought some of our football, especially in the first half was very good. Towards the end Grant Holt got sent off, and that puts you on edge again, but I'm proud that the players saw it through.
"The lads have got a lot of character, and it's never easy when you concede the first goal at home and the crowd become a bit edgey, but it was a great response to come from behind and win."
Before the game there were five changes for City , with Simon Lappin, Russell Martin, Grant Holt, Wes Hoolahan and Simeon Jackson coming in for Andrew Surman, Kyle Naughton, Steve Morison, Anthony Pilkington, and Adam Drury.
Wolves made a bright start and there was a scare for the Canaries in only the second minute as Kevin Doyle's header from Kightly's free-kick forced John Ruddy to make a scrambling save low down.
City hit back and a couple of minutes later in the same attack efforts in quick succession from Jonny Howson and Jackson were blocked by a combination of the Wolves defence and their Welsh 'keeper Hennessey.
In the 11th minute Norwich went close to grabbing an opener as Zak Whitbread met a David Fox corner with a firm header which was nodded off the line by Kightly, standing just inside the post.
But after a lull in the game the visitors capitalised on hesitancy in the Norwich defence to take the lead in the 25th minute, Kightly cutting the ball back across the box for Jarvis to side-foot past Ruddy from ten yards.
The Wolves fans' celebrations were brought to an abrupt halt within a minute however as City hit back with a well-crafted equaliser. Jackson lifted the ball over the last man and Holt was onside as he first lobbed Hennessey and then headed home with some panache.
And then as City finished the half strongly they took the lead in the 45th minute, when Holt blasted home his second of the match from the penalty spot after referee Mark Clattenburg awarded a spot kick for handball against Jonsson.
Half-time: Norwich City 2, Wolverhampton Wanderers 1
City made a change at the interval, with Kyle Naughton taking over at left-back from Simon Lappin.
As they had done in the first, Wolves started the half brightly and the City defence had to soak up a bit of pressure before the Canaries eventually began to find their fluidity again.
Norwich went close twice as the game approached the hour-mark - first Grant Holt's header from Bennett's right-wing cross was deflected just wide for a corner and then in the next attack Howson dribbled into the box before firing just over from the angle.
Wolves made a double substitution in the 65th minute, Nenad Milijas and Sylvan Ebanks-Blake replacing Jonsson and Doyle for the visitors. City responded with a change of their own, Elliott Bennett receiving a big ovation for a typically hard-working display as he made way for Andrew Surman.
As City pressed for a third goal Holt was a whisker away from sliding home Hoolahan's teasing ball in from the left, but it just eluded his outstretched boot in the six-yard box.
In the 73rd minute Lambert made his final change of the afternoon as Simeon Jackson made his way off to warm applause to be replaced by Steve Morison.
Four minutes later Morison had a chance to make his mark as Hoolahan's excellent ball picked him out charging into the Wolves half but as he bore down on Hennessey's goal Stearman recovered well to block his shot and then clear his lines.
In the 79th minute after a frenetic period of City pressure Howson's 22-yard daisy-cutter sliced through a packed penalty area and forced Hennessey to scramble it away under pressure.
A minute later Holt had the ball in the net yet again with a lofted chip over Hennessey into the far corner but he had strayed fractionally offside in the build-up and the 'goal' didn't stand.
At the other end with less than seven minutes of normal time remaining, Jarvis let fly with a well-struck effort which deflected just wide for a corner.
But as City looked to ease their way towards the finishing line there was a dramatic late twist as two-goal hero Holt was dismissed by referee Mark Clattenburg for a sliding challenge from behind on Kightly.
Kightly was replaced by Gorman for the visitors as they looked to capitalise on their extra-man advantage. In the 89th minute Zak Whitbread was booked for a foul on Milijas on the edge of the area but City's wall stood firm against the resulting free-kick.
Final score: Norwich City 2, Wolverhampton Wanderers 1
Norwich City: Ruddy, Martin, Whitbread, Holt (c), Jackson (Morison 73), Hoolahan, Fox, E.Bennett (Surman 65), Lappin (Naughton 46), Ward, Howson. Subs not used: Steer, Johnson, Crofts, Wilbraham.
Wolves: Hennessey, Edwards, Stearman, Kightly, Fletcher, Ward, Johnson (c), Jarvis, Bassong, Jonsson (Milijas 64), Doyle (Ebanks-Blake 64). Subs not used: De Vries, Berra, Foley, Price, Gorman.
Referee: Mark Clattenburg.