On 70 minutes the inevitable occurred: Erling Haaland stampeded forward, took Jack Grealish’s delivery and, with Lukasz Fabianski advancing, the goalscoring phenomenon feathered a spiralling lob over West Ham’s goalkeeper for a record Premier League goal No 35.
It eclipsed the tallies of Alan Shearer and Andy Cole and, more vitally, doubled Manchester City’s lead against a doughty West Ham and by the final whistle it was 3-0: Pep Guardiola’s blue machine were on top again with five matches remaining in the quest to emulate Manchester United and claim a hat-trick of titles.
A corner was the result, again from the left. Mahrez this time dropped the ball on the head of Nathan Aké, back after a hamstring problem, and West Ham escaped. Theirs was a strategy of quick breaks and set pieces, and when Vladimir Coufal pinged a free-kick into City’s area he aimed it at the lurking Michail Antonio.
West Ham scented another chance after Kyle Walker took out Emerson Palmieri down their left and a quick dead ball had Pablo Fornals pinging in a cross that had the champions’ defence scrambling.
There was, then, a fight about the visitors which Guardiola, in his usual technical area vantage point, had talked of beforehand. A City goal would soon change things and a sequence featuring Silva, Grealish and Julián Álvarez was a chance to create it, but the latter’s square pass to Haaland was misdirected.
City were warming up. A clutch of players galloped into the Hammers’ area and Haaland took a flying leap at a Grealish chip but his head failed to connect.
Aké was next to cross from the left and this time the Norwegian slipped as he began to launch himself. One more Grealish ball was floated in from the same area and though Antonio was back to thwart the danger, the West Ham No 9 had no out ball and City again took over.
None of this cowed Jarrod Bowen as, a little later, the England man went on a driving run from the right that took him beyond Aké and had him blazing at Ortega, the keeper saving with his frame.
What aided West Ham in City’s next attack was also a frame – of Fabianski’s goal: Haaland dropped deep, touched possession back to Rodri, and in a flash the midfielder was shooting and seeing the ball clip the goalkeeper’s right-hand post and roll agonisingly to safety.
David Moyes’s men were under siege. But, at the break, they remained intact. What they could not allow was any slip of concentration. A Grealish dash that provoked Flynn Downes into a foul was just that and from the free-kick City scored. Mahrez flipped it over from the inside-left and Aké rose to head in, Guardiola’s response a double-fisted air bump.
The home crowd were in raptures and, now, City for a passage were a swashbuckling proposition, Grealish, Silva, Álvarez tapping the ball between them, rolling off one and other, dizzying their opponent and suggesting that a second strike might be incoming.
Haaland, receiving the sweetest of dinks from Grealish, raced in and the scrambling Fabianski repelled the striker. Seconds later, Grealish was served the ball and his shot missed to the keeper’s right.
Thilo Kehrer then lived particularly dangerously when sliding in on Haaland to take ball and man in the area: the challenge fell into the “you see them given” category but John Brooks was not interested and the referee’s whistle remained around his wrist.
Yet West Ham were not interested in folding and the sight of Guardiola urging supporters to up the volume showed his concern as Fornals lifted two corners in from the left. The second was a Hail Mary that had Antonio rising in a melee and needed an Ortega punch to clear.
But now came Haaland’s strike, a 51st for City in all this season, leaving only Dixie Dean’s all-time mark of 63 to beat. Phil Foden’s late, deflected volleyed finish closed a perfect evening for City: it was a 1,000th goal under Guardiola. The milestones keep coming.