Goals from Alan Quinn, a penalty from Giovani and Jon Stead gave Blues the derby honours at Portman Road after going behind.
David Mooney gave the Canaries the lead on 15 minutes when he headed in Sammy Clingan's free-kick but Blues were level before the break with Pablo Counago and Giovani linking up to free Quinn who beat David Marshall low down with an excellent finish.
Town went in front on the hour. Kevin Lisbie was brought down by Marshall inside the box as he chased a long ball and Giovani beat the 'keeper from the spot.
Giovani went close to adding a third for Town while Mooney should have equalised with a close range effort before Stead seemed to settle in on 90 minutes, rolling the ball past Marshall after bursting clear.
But Norwich were given a lifeline in added on time, Quinn fouling Alan Lee and Clingan scoring from the spot.
Gareth McAuley and Jon Walters both failed to recover from injury in time with Town boss Jim Magilton naming Jaime Peters on the bench, Jon Stead joining him after overcoming a back problem.
Norwich started the better and former Blue, Alan Lee, won a free-kick after Ivan Campo caught him, Richard Wright dealing with Clingan delivery.
The Canaries were getting some joy down their right and Jon Otsemobor left Pim Balkestein in his wake but his cross found Campo who, not for the first time in the opening 45 minutes, was in the right place to clear.
Quinn forced a corner from Giovani's pass, Balkestein's header going straight at David Marshall, the Norwich 'keeper in the right place minutes later to save from Counago's spin and volley from 25 yards.
Alan Gow blazed a shot across goal after Lee had led a breakaway for the visitors before Bryan Gunn's side took the lead on the quarter hour, Mooney left alone to head in Clingan's free-kick.
Gary Doherty headed another Clingan free-kick back across goal but Lee was penalised as he tried to convert but on 24 minutes Town were level, Counago's pass finding Giovani who touched in on for Quinn to fire left footed past Marshall.
Wright saved brilliantly from Otsemobor as Norwich threatened to regain the lead, while at the other end Ryan Bertrand did well to tackle Kevin Lisbie as he looked to strike, the cross then evading the supporting David Norris.
Counago was booked for a foul on Lee, Gow soon following for a foul, with Town losing Ben Thatcher three minutes before the break, the left-back suffering a knee injury in a tackle with Croft.
Peters was handed his first Championship action as a replacement, the Canadian immediately getting the crowd to their feet with a burst down the flank, Jason Shackell beating Counago to the cross.
Marshall denied Giovani at his nearpost, Veliche Shumulikoski then seeing a piledrive blocked as Blues started the second-half on the front foot.
Wright saved from Gow, then Giovani and Balkestein both went close for Blues before Town got the breakthrough on the hour, Lisbie going down under the challenge of Marshall, referee Neil Swarbrick pointing to the spot and Giovani doing the rest.
Norris tested Marshall from 25 yards, Darel Russell doing the same at the other end, Wright equal to the task.
Cody McDonald replaced Croft as the game entered the final 25 minutes, Alex Bruce booked for a challenge on Lee.
Marshall did well to keep out Doherty's deflected effort from Norris' cross, Balkestein then failing to get on the end of Peters' cross, while Wright had to be quick off his line to deal with Campo's underhit back pass.
Mooney headed over in a gilt edged chance on 77 minutes after Gow had escaped his marker before Blues made two changes, Giovani replaced by Haynes and Counago by Stead.
Haynes immediately went into referee Swarbrick's book for a foul on Bertrand, then won a free-kick at the other end, Campo's effort hitting the wall.
Stead made it three on 90 minutes with a cool finish, getting a booking for his off with the shirt celebrations but Norwich pulled one back immediately with a Clingan penalty after Lee had been fouled.
Town held on though, making it a hat-trick of wins at Portman Road under Magilton's managership - all after going behind - with the defeat leaving Norwich in the bottom three.
Town: R.Wright, Bruce, Campo, Balkestein, Thatcher (Peters 43), Giovani (Haynes 77), Shumulikoski, Quinn, Norris, Lisbie, Counago (Stead 77). Subs not used: Bialkowski, Garvan. Booked: Counago, Bruce, Haynes, Stead.
Norwich: Marshall, Otsemobor, Shackell, Doherty, Bertrand, Croft (McDonald 68), Clingan, Russell, Gow, Mooney, Lee. Subs not used: Nelson, Lappin, Leijer, Smith. Booked: Gow
Att: 28, 274




















