Teemu Pukki fired Norwich City to a hard-fought 1-0 Championship win at Middlesbrough in a tale of two penalties to move top of the table.

City stretched their unbeaten run to eight games on Teesside, with second half substitute Pukki notching his sixth goal in the last nine outings for club and country from the penalty spot.

But that was after Marcus Tavernier had spurned an earlier chance from the spot when he was adjudged to have struck the ball twice as he slipped at the moment of impact.

Tavernier’s penalty finish was too good for Tim Krul but the referee ruled out the ‘goal’ and City took full advantage.

Daniel Farke opted to make three changes to his starting line up from the side that beat Swansea City 1-0 prior to the international break. Teesside lads Ben Gibson and Jordan Hugill came in for Christoph Zimmermann and Pukki respectively.

Farke outlined his concerns on Friday regarding Pukki’s heavy international workload while Zimmermann missed a couple of training sessions this week after feeling unwell.

Lukas Rupp replaced Kenny McLean after recovering from a hamstring issue. Todd Cantwell missed out with a minor knock but there were places in the expanded matchday squad for academy youngsters Dan Barden and teenage Scottish midfielder Reece McAlear.

Boro included former City favourite Jonny Howson but one-time Norwich loanee, Patrick Roberts, was on the bench for Neil Warnock’s hosts.

City made the brighter start, with Emi Buendia fooling George Saville with a body swerve before curling a right footer wide from 20 yards with Marcus Bettinelli at full stretch.

Djed Spence harried Rupp to concede a free kick just outside his own box in the 10th minute but Emi Buendia blocked the inswinging set piece at his near post.

Hugill dropped to the floor a minute later holding the top of his right shoulder after rolling away from an aerial challenge. The big frontman looked in distress in the immediate aftermath but after appearing to take some pain killers on the pitch he was able to return to the action.

Boro’s intensity was troubling the visitors in the opening quarter. City found themselves pinned inside their own half for a prolonged spell. Jacob Sorensen was booked for a trip on Howson and the home side thereafter tried to isolate him up against Spence.

Norwich’s discomfort was underlined when Krul raced to the penalty spot to clear a dropping ball but Chuba Akpom got a touch to veer around the keeper but Grant Hanley was back to thwart the striker.

Olly Skipp then ensured Spence’s low cross did not reach Akpom after Buendia had coughed up cheap possession.

Rupp accepted a rare invitation to get the dangerous side of Boro’s central midfield just before the half hour mark but his right foot effort flew wide from long range.

Howson looped a header at Krul in the 35th minute from close range but Rupp deserved credit for doing enough aerially in the challenge to prevent Howson generating enough power.

Krul was pressed into service again to smother Marvin Johnson’s low, swerving effort before Gibson completed the clearance.

Buendia bemused two Boro defenders with his dancing feet two minutes from the break before shovelling the ball onto Marco Stiepermann, but his left footed shot was blocked.

City made one change at the interval with Pukki replacing Hugill. A better slide pass from Stiepermann and he would have had a tap in within a minute of his arrival but the cross was cleared by Paddy McNair.

Norwich earned a huge let off in the 49th minute when Gibson upended Tavernier in attempting to clear the ball to concede a penalty. Tavernier cleverly appeared on his blind side and positioned himself between Gibson and the ball.

But the Boro man then remarkably slipped as he went to take the resulting spot kick and was penalised himself for touching the ball twice as it rolled past Krul into the net.

Dael Fry would surely have conceded a penalty at the other end but for a perfectly-timed tackle to halt Pukki as he shaped to strike Buendia’s pass on a visiting counter.

Pukki tried his luck again on the hour mark on the angle but McNair got a block in to divert his shot into the side netting.

Max Aarons then picked out the late-arriving Buendia who headed a difficult chance at Bettinelli before the Argentine made a desperate sliding lunge to try and reach Przemyslaw Placheta’s low centre.

But in the midst of City’s best concerted spell, Boro countered and it needed Hanley to bravely block from Tavernier, who then skied Howson’s clip over from the corner.

Norwich hit back and when Aarons was upended by Hayden Coulson for a clear penalty to the visitors in the 72nd minute Pukki calmly stepped up to send Bettinelli the wrong way from the spot.

Krul plucked Sam Folarin’s curler from underneath his bar after Sorensen had managed to take the heat out of the shot at the far post.

McLean replaced Buendia and took a heavy impact from Marc Bola’s full-blooded last ditch challenge within seconds of his arrival as he tried to finish Pukki’s cross. The Scot was able to continue after being checked out by City’s physios.

Roberts was also introduced for the hosts.

Boro players and Warnock pleaded for the referee to show Sorensen a second yellow card for a body check on Folarin, but the official opted not to yield to the home pressure.

Hanley produced another superb near post block to halt Akpom from the free kick before Zimmermann, Alex Tettey and Mario Vrancic were all added to the heroic defensive effort to see out five additional minutes of added time.

• Middlesbrough (4-2-3-1): Bettinelli, Dijksteel, Fry, McNair, Bola, Spence (Folarin 66), Saville, Howson, Tavernier (Roberts 81), Johnson (Coulson 66), Akpom. Subs: Stojanovic, Wood, Hall, Wing, Watmore, Assombalonga.

• Norwich City (4-2-3-1): Krul, Aarons, Hanley (C), Gibson, Sorensen (Vrancic 90), Skipp, Rupp, Buendia (McLean 81), Stiepermann (Tettey 90), Placheta (Zimmermann 90), Hugill (Pukki 45). Subs: McGovern, Barden, McAlear, Martin.

• Booking: Sorensen (foul on Howson, 14)

• Goal: Pukki (72)

• Added on time: 1 minute / 5 minutes

• Referee: Tony Harrington

• Attendance: BCD