Goals from Gabriel Jesus, Sergio Aguero and Raheem Sterling sealed the victory, adding further gloss to an excellent few weeks for Pep Guardiola’s new-look squad.
City again began with a back three of Vincent Kompany, John Stones and Nicolas Otamendi, with Danilo on the right and Leroy Sane on the left providing width ahead of them.
Yaya Toure anchored the midfield, allowing David Silva and Kevin De Bruyne freedom to create in behind Aguero and Jesus up top.
Ederson was again given the nod in goal after his fine performances on the Club’s tour of the US, but new signing Bernardo Silva, given an extended summer break after his Confederations Cup exertions, was named on the bench having only joined up with his new team-mates on Tuesday.
Another bold selection from Guardiola that suggests City will once again be committed to attacking football in the coming season.
City started brightly, immediately looking sharper than their opponents, and they opened the scoring after eight minutes, Jesus finishing off a fine team move with a back-post tap in from De Bruyne’s beautifully weighted delivery. The Belgian, in outstanding form during the tour of the US, was once again proving instrumental in City’s best moments.
Aguero forced a decent save from Joe Hart moments later after being put through by David Silva’s incisive through-ball inside the box as City threatened to kill the game off early.
Jesus’ movement was beginning to cause West Ham real problems. He dispossessed Angelo Ogbonna inside the box and looked to square it but the ball scrambled clear.
City had completely dominated the opening stages but were given a scare on the half hour mark. Pablo Zabaleta found himself clear down the right and his cross was headed over by Tony Martinez.
City were quickly back in the ascendency, though. Sane, twisting and turning down the left, created a yard of space and flashed a shot wide of Hart’s far post, before Danilo’s shot was palmed away at the near-post by Hart.
City were sharper on the ball than the Hammers and the only disappointment at half-time was that they weren’t further ahead.
And the second half followed much the same pattern: City in the ascendency and West Ham struggling to make an impact.
Aguero doubled City’s lead after 56 minutes, producing a simple first-time finish after Silva’s ball across the area. It was the least the Blues deserved.
Danilo blasted wide after some great passing between Silva, Aguero and De Bruyne, before Guardiola made seven changes at once, bringing on Raheem Sterling, Bernardo, Oleksandr Zinchenko, Phil Foden and Eliaquim Mangala, Fernandinho and Kyle Walker to freshen things up.
Silva forced a wonderful save from Hart shortly after, before Sterling volleyed home first time from inside the area after Foden’s effort was charged down.
Youngsters Tosin Adarabioyo, Brahim Diaz and Patrick Roberts were given a runout with 20 minutes remaining – but even with a much-changed side City remained fluent and wonderful to watch.
Danilo once again showcased his talents, this time on the right-hand side. He adds pace, energy and physical presence to City’s flanks, and the team has a much more dynamic look thanks to his influence.
He’s had a fine pre-season.
Guardiola and the squad will now travel back to Manchester to begin their final preparations for the new Premier League season. City’s first game is next Saturday away at Brighton, with kick-off at 5.30pm.
You can enjoy minute-by-minute coverage of that game right here on mancity.com, with highlights of the win over West Ham available shortly.