
Erling Haaland broke the Premier League record for goals in a season as Manchester City returned to the top of the table by beating West Ham.
Haaland's sublime chip over Lukasz Fabianski 20 minutes from time took him on to 35, one clear of Andy Cole and Alan Shearer, whose 34-goal tallies had come in a 42-match campaign.
The Norwegian is now on 51 in all competitions, 12 behind Dixie Dean's all-time English record, with a potential nine games still to play.
Haaland's latest effort helped City to a ninth successive league win - and they now lead Arsenal by a point and have a game in hand.
Nathan Ake put them in front when he headed home Riyad Mahrez's free-kick at the far-post five minutes into the second half, with Phil Foden's deflected volley adding a third.
Foden's effort was City's 1,000th since Pep Guardiola came to the club in 2016.
West Ham managed just one shot on target, their preparations for the match having been hampered significantly by a sickness bug.
The visitors were deprived of three key players hours before kick-off - captain Declan Rice among them - and were able to name only five outfield substitutes.
David Moyes' side remain four points clear of the relegation zone with four games remaining.
- Quiz: How many record-breaking Haaland moments do you remember?
- How did you rate Manchester City's performance? Have your say here
- What did you make of West Ham's display? Send us your views here
Haaland the record breaker
This match was played 25 years to the day after City were relegated to the third tier of English football for the only time in their history.
On that Sunday afternoon in 1998, City won 5-2 at Stoke's Britannia Stadium - as it was then known - but results elsewhere dropped them into a division containing Notts County, York, Chesterfield and Macclesfield. They have come a long way from those days.
In 2023, City are chasing a Treble of the Champions League, Premier League and FA Cup - with Haaland at the head of their challenge.
But it looked for a long time as though he would be denied a goal in a Premier League match for only the 10th time since his summer move from Borussia Dortmund.
He did try to steer one far-post header towards goal at the end of the first half but the angle was against him.
With City leading through Ake's opener, though, the Norwegian's moment arrived. As Jack Grealish picked up possession in the centre of the pitch, Haaland set off on one of those threatening sprints. Grealish sent the ball through, Haaland steadied himself, then beat Fabianski with a finish that was far harder than he made it look.
It takes his tally to eight goals in his past six league games; City are 12 points from their third successive title and fifth in six seasons under Guardiola.
Little wonder Guardiola joined City's players and his backroom staff in forming a guard of honour for Haaland as he made his way off the pitch.
Depleted West Ham well beaten
Under the circumstances, Moyes was probably relieved to get out of Manchester without West Ham's goal difference taking a significant hit.
In losing Rice, Tomas Soucek and Nayef Aguerd to illness, the manager was saying goodbye to his midfield driving force, his most potent set-piece threat and his best defender. With Kurt Zouma ruled out through injury, it left Moyes to pursue a plan of containment and, as a back-up plan, drop further back.
When City had the ball, Michail Antonio moved to a position almost on the left of a midfield three. Behind that were two deep-lying midfielders and a five-man defence. It was almost as if West Ham needed a 12th player to give them an attacking option.
Evidently, that was not possible, so possession was at a premium and the visitors weren't able to create anything with it.
When he replaced Michail Antonio, Moyes spoke to him as if to assure him he was being saved for more manageable tests ahead. This trip to Manchester was as difficult as it gets.

Player of the match
FodenPhil Foden
Manchester City
Avg
Squad number47Player nameFoden
Average rating7.40
Squad number9Player nameHaaland
Average rating7.20
Squad number10Player nameGrealish
Average rating6.91
Squad number6Player nameAké
Average rating6.78
Squad number25Player nameAkanji
Average rating6.61
Squad number4Player namePhillips
Average rating6.60
Squad number5Player nameStones
Average rating6.53
Squad number20Player nameBernardo Silva
Average rating6.36
Squad number16Player nameRodri
Average rating6.29
Squad number19Player nameÁlvarez
Average rating6.27
Squad number2Player nameWalker
Average rating6.23
Squad number3Player nameRúben Dias
Average rating6.22
Squad number26Player nameMahrez
Average rating6.19
Squad number18Player nameOrtega
Average rating6.13
West Ham United
Avg
- Squad number9Player nameAntonioAverage rating
6.13
- Squad number11Player nameLucas PaquetáAverage rating
6.12
- Squad number21Player nameOgbonnaAverage rating
6.08
- Squad number1Player nameFabianskiAverage rating
6.05
- Squad number3Player nameCresswellAverage rating
5.98
- Squad number12Player nameDownesAverage rating
5.98
- Squad number24Player nameKehrerAverage rating
5.95
- Squad number20Player nameBowenAverage rating
5.94
- Squad number33Player nameEmersonAverage rating
5.94
- Squad number5Player nameCoufalAverage rating
5.83
- Squad number8Player nameFornalsAverage rating
5.80
- Squad number2Player nameJohnsonAverage rating
5.50
- Squad number22Player nameBenrahmaAverage rating
5.17
- Squad number18Player nameIngsAverage rating
4.88
Line-ups
Man City
Formation 3-2-4-1
- 18Ortega
- 2Walker
- 6AkéSubstituted forAkanjiat 77'minutes
- 3Rúben Dias
- 16RodriSubstituted forPhillipsat 90+1'minutes
- 19ÁlvarezSubstituted forFodenat 77'minutes
- 5Stones
- 20Bernardo Silva
- 9Haaland
- 26Mahrez
- 10Grealish
Substitutes
- 4Phillips
- 8Gündogan
- 14Laporte
- 21Gómez
- 25Akanji
- 31Ederson
- 32Perrone
- 47Foden
- 82Lewis
West Ham
Formation 4-2-3-1
- 1Fabianski
- 5CoufalSubstituted forJohnsonat 62'minutes
- 24Kehrer
- 21Ogbonna
- 3Cresswell
- 12DownesBooked at 49mins
- 11Lucas Paquetá
- 20BowenSubstituted forBenrahmaat 79'minutes
- 8Fornals
- 33Emerson
- 9AntonioSubstituted forIngsat 67'minutes
Substitutes
- 2Johnson
- 10Lanzini
- 13Aréola
- 14Cornet
- 18Ings
- 22Benrahma
- 49Anang
- Referee:
- John Brooks
- Attendance:
- 53,305
Match Stats
- Possession
- Home70%
- Away30%
- Shots
- Home16
- Away6
- Shots on Target
- Home7
- Away2
- Corners
- Home6
- Away3
- Fouls
- Home8
- Away8
Live Text
<