Premier League
West HamWest Ham United0Man CityManchester City2

West Ham 0-2 Man City: Erling Haaland scores twice as Man City turn on style

By Phil McNultyChief football writer at London Stadium

Erling Haaland opened his Manchester City goal account and demonstrated the huge threat he will pose this season as the champions began the defence of their Premier League crown in impressive fashion at West Ham United.

The brilliant 22-year-old Norwegian striker delivered exactly what City manager Pep Guardiola wanted following his summer signing from Borussia Dortmund when he gave City the lead from the penalty spot nine minutes before half-time, after he was brought down by West Ham's substitute goalkeeper Alphonse Areola.

He was on as substitute for injured Lukasz Fabianski but was helpless when Haaland wrapped up City's win after 65 minutes with a composed left-foot finish from Kevin de Bruyne's perfect pass.

City won at a canter against a strangely passive West Ham, who barely threatened after a brief opening burst, spending long spells out of possession as the champions exerted almost complete command.

Man City lay down a marker

It was a proud moment for me and my family - Haaland

Manchester City have wasted no time in demonstrating they will be the team to beat in the Premier League title race this season with a superbly controlled display.

Once City had seen off West Ham's early efforts they dominated possession and won with so much to spare that there were thousands of empty seats in London Stadium long before the final whistle.

West Ham 0-2 Man City: Haaland an 'incredible threat' - Pep Guardiola

City did not need to exert themselves but they present an ominous prospect for their rivals with the power, skill and goalscoring ability of Haaland bolted onto the sort of service he will receive from the likes of De Bruyne and Phil Foden.

Guardiola gave his other summer signing, England midfield man Kalvin Phillips, a couple of minutes to ease in with the game won.

And an encounter that was flagged up as a potentially fierce test for City proved to be a stroll, with three points a formality long before the end.

Haaland will rightly claim the headlines but all of City's other qualities were on show in a package that will have Premier League defences looking nervously at what might face them when they meet Guardiola's side.

This was as easy as it gets against a West Ham side who tested City to the limit here last season and were a formidable prospect at home - but not here as they were put away with consummate ease.

Passive Hammers get what they deserve

West Ham 0-2 Man City: David Moyes says Irons 'well outplayed' by Manchester City

West Ham went into the game with high hopes, although manager David Moyes felt he could not risk new £30m striker Gianluca Scammaca from the start.

Instead, following a bright first few minutes, West Ham barely laid a glove on City, sitting back almost waiting to be beaten, which they inevitably were.

Declan Rice tried in vain to exert some influence but West Ham were so starved of the ball that they simply could not get a foothold in the game.

It led to groans of frustration from West Ham fans inside London Stadium as they demanded their team at least try to apply pressure on City.

There will be better days ahead for Moyes and West Ham when they assemble all of their new faces before the end of the transfer window but this was a chastening day for a club that has been looking forward to the season with such optimism.

Player of the match

HaalandErling Haaland

with an average of 8.26

West Ham United

  1. Squad number41Player nameRice
    Average rating


  2. Squad number7Player nameScamacca
    Average rating


  3. Squad number20Player nameBowen
    Average rating


  4. Squad number5Player nameCoufal
    Average rating


  5. Squad number2Player nameJohnson
    Average rating


  6. Squad number28Player nameSoucek
    Average rating


  7. Squad number1Player nameFabianski
    Average rating


  8. Squad number3Player nameCresswell
    Average rating


  9. Squad number22Player nameBenrahma
    Average rating


  10. Squad number8Player nameFornals
    Average rating


  11. Squad number10Player nameLanzini
    Average rating


  12. Squad number13Player nameAreola
    Average rating


  13. Squad number9Player nameAntonio
    Average rating


  14. Squad number32Player nameCoventry
    Average rating


  15. Squad number12Player nameDownes
    Average rating


  16. Squad number4Player nameZouma
    Average rating


Manchester City

  1. Squad number9Player nameHaaland
    Average rating


  2. Squad number17Player nameDe Bruyne
    Average rating


  3. Squad number47Player nameFoden
    Average rating


  4. Squad number3Player nameRúben Dias
    Average rating


  5. Squad number16Player nameRodri
    Average rating


  6. Squad number7Player nameJoão Cancelo
    Average rating


  7. Squad number8Player nameGündogan
    Average rating


  8. Squad number2Player nameWalker
    Average rating


  9. Squad number6Player nameAké
    Average rating


  10. Squad number31Player nameEderson
    Average rating


  11. Squad number10Player nameGrealish
    Average rating


  12. Squad number19Player nameÁlvarez
    Average rating


  13. Squad number20Player nameBernardo Silva
    Average rating


  14. Squad number4Player namePhillips
    Average rating


  15. Squad number26Player nameMahrez
    Average rating


  16. Squad number80Player namePalmer
    Average rating



West Ham

Formation 4-2-3-1

  • 1FabianskiSubstituted forAreolaat 29'minutes
  • 5Coufal
  • 2Johnson
  • 4Zouma
  • 3Cresswell
  • 28Soucek
  • 41Rice
  • 20BowenSubstituted forDownesat 90+2'minutes
  • 10LanziniSubstituted forBenrahmaat 57'minutes
  • 8FornalsSubstituted forCoventryat 90+2'minutes
  • 9AntonioSubstituted forScamaccaat 57'minutes


  • 7Scamacca
  • 11Vlasic
  • 12Downes
  • 13Areola
  • 22Benrahma
  • 32Coventry
  • 35Randolph
  • 40Oko-Flex
  • 50Ashby

Man City

Formation 4-3-3

  • 31Ederson
  • 2Walker
  • 3Rúben Dias
  • 6Aké
  • 7CanceloBooked at 45mins
  • 17De BruyneSubstituted forPalmerat 88'minutes
  • 16RodriSubstituted forPhillipsat 89'minutes
  • 8GündoganSubstituted forBernardo Silvaat 78'minutes
  • 47FodenSubstituted forMahrezat 88'minutes
  • 9HaalandSubstituted forÁlvarezat 78'minutes
  • 10Grealish


  • 4Phillips
  • 5Stones
  • 18Ortega
  • 19Álvarez
  • 20Bernardo Silva
  • 26Mahrez
  • 80Palmer
  • 82Lewis
  • 97Wilson-Esbrand
Michael Oliver

Match Stats

Home TeamWest HamAway TeamMan City
Shots on Target

Live Text

  1. Post update

    Match ends, West Ham United 0, Manchester City 2.

  2. Full Time

    Second Half ends, West Ham United 0, Manchester City 2.

  3. Post update

    Offside, West Ham United. Kurt Zouma tries a through ball, but Saïd Benrahma is caught offside.

  4. Substitution

    Substitution, West Ham United. Flynn Downes replaces Jarrod Bowen.

  5. Substitution

    Substitution, West Ham United. Conor Coventry replaces Pablo Fornals.

  6. Post update

    Attempt missed. Nathan Aké (Manchester City) header from the centre of the box misses to the left. Assisted by Riyad Mahrez with a cross following a corner.

  7. Post update

    Corner, Manchester City. Conceded by Kurt Zouma.

  8. Post update

    Attempt blocked. Julián Álvarez (Manchester City) right footed shot from outside the box is blocked.

  9. Substitution

    Substitution, Manchester City. Kalvin Phillips replaces Rodri.

  10. Substitution

    Substitution, Manchester City. Riyad Mahrez replaces Phil Foden.

  11. Substitution

    Substitution, Manchester City. Cole Palmer replaces Kevin De Bruyne.

  12. Post update

    Corner, Manchester City. Conceded by Ben Johnson.

  13. Post update

    Phil Foden (Manchester City) wins a free kick in the defensive half.

  14. Post update

    Foul by Saïd Benrahma (West Ham United).

  15. Post update

    Attempt missed. Rodri (Manchester City) right footed shot from outside the box misses to the left. Assisted by Jack Grealish.

  16. Substitution

    Substitution, Manchester City. Julián Álvarez replaces Erling Haaland.

  17. Substitution

    Substitution, Manchester City. Bernardo Silva replaces Ilkay Gündogan.

  18. Post update

    Attempt missed. Jack Grealish (Manchester City) right footed shot from the left side of the box is close, but misses to the left. Assisted by Kevin De Bruyne.

  19. Post update

    Attempt blocked. Erling Haaland (Manchester City) left footed shot from the left side of the box is blocked. Assisted by Ilkay Gündogan.

  20. Post update

    Jack Grealish (Manchester City) wins a free kick in the defensive half.

Everything you need to know about your Premier League team banner
  • Our coverage of your Premier League club is bigger and better than ever before - here's everything you need to know to make sure you never miss a moment
BBC Sport banner footer


Join the conversation

These comments are now closed.