One can only guess at what was going through Henri Lansbury's mind as he sat on the bench, his services not required, throughout Norwich City's classy 3-2 victory over Leicester last week.

When the loan midfielder from Arsenal was named among the substitutes once again for last night's clash with Bristol City at Carrow Road, it seemed inconceivable that he would not be called upon at some point, yet as the minutes ticked away . . .

Lansbury eventually made it on to the pitch with fewer than 10 minutes to go and the game poised at 1-1 as manager Paul Lambert decided to replace Simeon Jackson and, like a greyhound out of a trap, the 20-year-old transformed what looked like being a third successive home draw against teams in the bottom half of the Championship into another night of wild celebration.

The net result of Lansbury's intervention - scoring his fourth goal for the Canaries, in the 89th minute, before setting up Andrew Surman's first for the club in stoppage time - is that Lambert's men are now three points clear in second place with nine games to go, and have been beaten just twice in 23 league matches.

Skipper Grant Holt had given City a second-minute lead from the penalty spot with his side's fastest goal of the season, but the ever-threatening Albert Adomah levelled the scores on 65 minutes and it took another great, late show to nudge City ahead of some of their big promotion rivals.

There was one change to Lambert's line-up from the win at Leicester with Jackson recalled in attack for Aaron Wilbraham, ruled out by a back injury.

Simon Lappin returned to the substitutes' bench after missing five matches following an appendix operation.

If Carrow Road regulars have become accustomed to their team's penchant for dramatic finishes - and those leaving the ground early have paid the price more than once - the late arrivals have not missed too much, until now.

This time, there was the perfect start for the Canaries when they were awarded a penalty in the opening minute. Just 44 seconds had passed when Robins' skipper Liam Fontaine brought down Wes Hoolahan as he pursued a pass by Jackson, after Holt had flicked on Zak Whitbread's forward ball.

Holt stepped up to confidently slam the spot-kick past former England goalkeeper David James for his 18th goal of the season – and his second penalty in successive games after scoring at Leicester six days earlier.

James was brought into action again in the fifth minute when Surman's corner was met by a header by Elliott Ward and cleared as far as David Fox, who shot through a crowd of players, but the keeper was right behind his effort.

Goalkeeper John Ruddy was involved for the first time in the eighth minute, keeping out a curling effort by Nicky Maynard.

Jackson was certainly enjoying his recall to senior duty and another smooth Norwich move ended with Andrew Crofts taking Hoolahan's pass and sending in a curling effort that James was right behind.

It was all the Canaries at this stage and Holt hooked another effort into the Barclay as he was just unable to keep the ball down.

It could so easily have been 2-0 as Russell Martin's cross whistled past the far post with Jackson just unable to apply the finishing touch.

There was a reminder of the slender nature of the hosts' lead, however, when Ruddy was forced to turn a powerful drive from Adomah past the post.

• HALF-TIME: Norwich City 1, Bristol City 0

Five minutes into the second half, Jackson chased Hoolahan's ball into the area and flicked it past James but Fontaine was back to hammer clear.

Ruddy went sprawling to his left again to beat away another powerful effort by Adomah and as the visitors kept pressing, Marc Tierney was booked for a foul on Adomah.

But the Robins had another escape as Steven Caulker got back to block Holt's close-range effort after Hoolahan and Surman combined well.

Russell Martin was denied by a block by Fontaine after a neat overhead flick from Holt, then, with the Canaries pressing relentlessly, Crofts hit a swerving left-foot shot just over the top. Caulker came to the rescue again when he cut out Surman's cross into the six-yard box after good work by Hoolahan.

But the Robins were quick on the counter-attack and levelled in the 65th minute. Substitute Jamal Campbell-Ryce drove forward and picked out Adomah on the right side of the penalty area and, as Surman slipped in a desperate effort to catch him, he this time tucked his shot past Ruddy, the 'keeper managing to get a touch but not enough to keep the ball out.

Crofts tried to beat James from all of 45 yards after the 'keeper had rushed out to head clear from Jackson, but the midfielder's shot drifted wide.

The busy James punched clear from a Fox corner and did well to follow out and block Crofts' follow-up shot. The former England man took the ball full in the forehead and needed attention before continuing.

There were appeals for handball as Caulker cut out a cross from Hoolahan, but referee Boyeson was unimpressed.

City finally made a change when Lansbury replaced Jackson, and Surman blazed wide of the target after Hoolahan brought down Whitbread's long ball.

The mist had swirled high above Carrow Road for the whole of the contest but, thankfully, was not about to descend and obscure yet another grandstand finish.

Lansbury almost unlocked the Robins' defence with an astute pass that was perhaps too clever for his colleagues, but the substitute proved the matchwinner in the 89th minute however. Ruddy's long ball forward bypassed Holt and reached Hoolahan, who flicked it into the penalty area for Lansbury to shrug off one challenge and hook the ball in - a goal remarkably similar to his stoppage time winner against Millwall last month.

The icing was applied to the cake in stoppage time when Lansbury's trickery by the corner flag left Caulker floundering again and Surman took possession before closing in and tucking a shot through James' legs from a tight angle.

• RESULT: Norwich City 3, Bristol City 1