In the end, there wasn’t much drama. Manchester City easily extended English football’s longest winning run against a professional opponent in the Craven Cottage sunshine, their 15th league win over Fulham in succession something of a formality before Erling Haaland’s second-half spot kick confirmed Pep Guardiola’s side had secured third spot after Ilkay Gundogan’s improvised overhead kick had put them in pole position early on. Marco Silva handed Tom Cairney a start on what might be the midfielder’s final appearance in a Fulham shirt – nobody still seems sure – but this had the feel, for the home side at least, of an end-of-term obligation after the Whites’ push for a European place petered out a fortnight ago.

There is no shame in losing to even this Manchester City outfit, who are slower and far less ruthless than the outfit that has utterly transformed the English game under Guardiola’s stewardship. But Fulham could still feel aggrieved at letting a good opportunity to end their City curse at the Etihad earlier this season and there were opportunities to have upset the form book here, too. Gundogan’s acrobatic opener was eye-catching but the product of ponderous defending, whilst the home side spurned a host of chances to equalise, before Haaland did what he couldn’t do in the FA Cup final and coolly converted a penalty to put the result beyond doubt.

Where Silva started with Fulham’s feted number ten, Guardiola introduced the departing Kevin de Bruyne for the final six minutes. Gundogan filled the Belgian’s shoes as an advanced playmaker and eased any nerves amongst the travelling support by scoring from City’s first attack of any note. Omar Marmoush had sent a sighter wide from a free-kick, but Matheus Nunes scuttled between Jorge Cuenca and Antonee Robinson far too serenely. The right back’s drive spun off Bernd Leno’s gloves and high into the air, where Gundogan produced a brilliant bicycle kick that cannoned in off the crossbar. A lengthy VAR check found no reason to disallow the goal and, the Champions’ League chasers were in front.

Silva’s side offered a rousing riposte. Harry Wilson, restored to the right flank after another wonderful winner against Brentford, forced a sprawling save from Ederson with Adama Traore unable to profit from the rebound. Andreas Pereira put Traore clear of the visiting back line with a chipped pass but the winger was unable to bring the ball under as spell as he advanced on goal. City enjoyed two-thirds of the ball and should have been further in front by the back but Jeremy Doku’s shot clipped the heels of Kenny Tete and drifted a couple of yards wide of Leno’s far post.

Cairney, taking the opportunity to impress in a deep-lying midfield role, had a couple of shots blocked before releasing Wilson down the right but the Welshman’s shot was kept out by Ederson’s fingertips. The loose ball run to Pereira but the Brazilian found only the side netting from inside the six-yard box. City reasserted themselves at the start of the second half with Tete nipping in the nick of time to stop Doku and Leno saving Josko Gvardiol’s header from a corner.

The tireless running of Raul Jimenez fashioned a great chance for Silva’s side as the Mexican played Wilson into space. Reuben Dias read the danger but the loose ball broke favourably at the feet of Pereira only for the former Manchester United man to scuff his shot into Manuel Akanji rather than the net. It proved to be that sort of day for Fulham. Jimenez beat Ederson to hopeful punt but badly miscued his lob when he had time to take a touch – and the hosts were duly punished when Sasa Lukic tripped Gundogan in the box, with Haaland sending Leno the wrong way from twelve yards.

Academy graduates Ryan Sessegnon and Josh King were waiting to come on when Andy Madley pointed to the spot and the substitutes nearly combined to set up a grandstand finale, but King’s header lacked a little conviction. Madley ignored home shouts for a spot-kick of their own when Dias appeared to use his arm in the area after a terrific Tete flick and Fulham at least finished with some fluency. Sander Berge was denied by a superb save from Ederson and Jimenez’s own acrobatic attempt flashed over the bar.

City’s resilience and killer instinct in the final third constructed a cushion Guardiola’s side never looked like relinquishing. The Hammersmith End implored the Fulham hierarchy to offer captain Cairney ‘one more year,’ whilst paying fulsome tribute to Cliffie Dean and Stuart Gray at different points during an emotional afternoon. Eleventh place in the Premier League shouldn’t be sniffed at, but you sense Silva’s attention has already turned to an extensive summer rebuilding project.

FULHAM (4-2-3-1): Leno; Tete, A. Robinson, Andersen, Cuenca; Lukic (Berge 86), Cairney; Wilson (Iwobi 61), Traore (R. Sessegnon 64), Pereira (Smith Rowe 64); Jimenez. Subs (not used): Benda, Bassey, Willian, Vinicius.

MANCHESTER CITY (4-2-3-1): Ederson; Nunes, Gvardiol, Akanji, Dias; Gonzalez, B. Silva; Marmoush (Foden 82), Doku (Savinho 74), Gundogan (de Bruyne 85); Haaland (Echeverri 85). Subs (not used): Ortega, Ake, Rodri, O’Reilly.

GOALS: Gundogan (21), Haaland (pen 72).

REFEREE: Andy Madley (West Yorkshire).

ATTENDANCE: 27,671