Emi Buendia's sumptuous first-half strike was enough for Norwich City to record their sixth win in a row against Brentford.
Buendia's superb 26th minute effort was the difference in a first-half where both sides enjoyed periods of superiority. The Argentine picked the ball off Mario Vrancic and slalomed his way past Brentford challenges before dispatching the ball into the bottom corner.
City dealt with everything Brentford threw at them in the second-half, with goalkeeper Tim Krul relatively untested, to notch another important three points in their quest for promotion back to the Premier League.
Daniel Farke named an unchanged squad from the one which travelled for the win over Wycombe Wanderers on Sunday, with Onel Hernandez keeping his place in the starting eleven.
As for Brentford, they welcomed Mathias Jensen and Sergi Canos back to their starting eleven.
City almost got off to the perfect start inside two minutes. They played through the Brentford lines with ease as Buendia ended up sliding into the path of Pukki. He tried to lift the ball over David Raya but put just too much on his effort and it went over the crossbar.
On nine minutes, a quick Brentford break presented their first sight at goal. Jensen swept the ball wide to Canos who cut inside a forced Tim Krul into action.
Moments later, Brentford had a priceless opportunity to take the lead. Bryan Mbeumo beat Dimitris Giannoulis and his cross was palmed into the danger area by Tim Krul. Luckily for the Canaries, Sergi Canos lost his footing when he looked to have a clean shot at goal.
Brentford were starting to look the more dangerous of the two sides and on 17 minutes a long, diagonal pass from Mathias Jensen found top scorer Ivan Toney but a difficult take for the Bees’ striker ended up comfortably in the arms of Krul.
It was a moment of brilliance though which broke the deadlock on 26 minutes. A Canos ball was intercepted by Giannoulis and moved to Vrancic. He switched it wide to Buendia who cut inside, ghosted past three defenders and fired into the bottom corner from distance.
The goal gave City confidence and they started to boss proceedings, with Vrancic twice having a sight at goal, only to be thwarted by Raya.
It should have been two for the Canaries on the stroke of half-time as an under pressure Buendia slid an inch perfect pass into the path of Pukki racing towards goal. Once again, the Finn tried to chip the ball over Raya but the Bees stopper was equal to it once again.
Pukki picked up where he left off at the start of the second-half and came up against Raya once more, this time from slightly further out. A long ball was flicked on by McLean and Pukki jinked past the challenges before aiming one for the bottom corner, but Raya at full-stretch was there to deny him.
Brentford then started to enjoy more of the ball but City kept them at arms length. They occasionally switched their patient build-up with a aerial pass but the Canaries stood firm.
Instead, it was the home side which threatened the scoreline next. A simple Buendia free-kick into the area was met by Ben Gibson but his header was smothered low by Raya.
Shortly after Brentford brought Tariqe Fosu and Christian Norgaard, Pukki came close once again. Buendia slid the ball into his path but the Finn missed the target on this occasion.
The chances kept coming for City. On 75 minutes, Buendia fired the ball into Hernandez in the box but his low strike was saved by Raya.
Muted penalty appeals came on 81 minutes when Pukki tumbled over in the area under the challenge of Mads Bech Sorensen, before Giannoulis lashed over from a tight angle after a through ball by substitute Lukas Rupp.
The Bees had to wait until stoppage time for their first chance on goal of the second-half but Toney could only drag his shot wide. Moments later, Henrik Dalsgaard nodded wide of Mads Roerslev's cross before a hectic period saw a penalty appeal for a foul on Bryan Mbeumo turned down.
But the second-half was, on the whole, controlled by City as their maintained their impressive run.
Norwich City: Krul (GK), Aarons, Hanley (c), Vrancic (Rupp, 69), Buendia, Skipp, Pukki (Hugill, 87), McLean, Hernandez (J. Sorensen, 83), Giannoulis, Gibson
Subs not used: Barden (GK), Zimmermann, Dowell, Placheta, Tettey, Gibson
Goals: Buendia (26)
Bookings: Vrancic (50)
Brentford: Raya (GK), Pinnock, Canos (Fosu, 67), Jensen, Toney, Mbeumo, Ghoddos (Forss, 76), Dalsgaard (c), Reid (Roerslev, 76), Janelt (Norgaard, 67), M. Sorensen
Subs not used: Daniels (GK), Marcondes, Zamburek, Gilbert, Bidstrup
Bookings: Reid (40)
Venue: Carrow Road
Referee: Tim Robinson