Sergio Aguero's second-half penalty proved enough to see off the Irons, in a game which saw the away side worry the champions of England for large parts.
Story of the game
The first effort of the game came inside the first two minutes, as Kevin de Bruyne picked the ball up in space on the edge of the Hammers box and fired from range, just wide.
This was followed up by a Riyad Mahrez effort as David Silva dinked the ball over to him, before the Spaniard hit the post from close range. Plenty of early chances for City – the Irons lucky to remain level.
A few more City half chance came and went in the opening 30 minutes, although following a slow start, Manuel Pellegrini’s side soon caught up with the pace of the City attack, limiting the Blues to fewer efforts on goal.
The home crowd grew more restless as the half went on, partly due to West Ham’s, and mostly Angelo Ogbonna’s, solid defending, although also possibly due to the fact that Liverpool had taken an early two-goal lead at Anfield.
The Irons hadn’t posed much threat at all going forward, although had shut down City increasingly well as the half went on, and as a result, went into half-time level.
Into the second-half, West Ham started on the front foot. Substitute Manuel Lanzini picked the ball up and played a pin-point cross into unmarked Andy Carroll, before the Londoner's captain for the day fired goalwards, only to be denied by a great save from Ederson – a huge let-off for City.
Almost immediately, Bernardo had a huge impact on the game.
Driving into the penalty area, the Portuguese substitute was brought down by Felipe Anderson, penalty City.
Up stepped Aguero to send Lukasz Fabianski the wrong way and City into the lead. A huge relief for the Etihad faithful.
The chances and confidence then started to flow for City. An extraordinary sequence of events saw Sterling denied by Fabianski, with the rebound slammed goalwards by Bernardo, but blocked on the line by Ryan Fredricks – West Ham lucky to remain in the game.
Sterling then had a great chance himself to wrap up the scoring with just over 10 minutes to go, although under pressure from Ogbonna, was unable to hit the target from close range.
A few half-chances for West Ham came and went, although City held for three crucial points.
Takeaways from the match
An early goal is key for the Citizens
So many times this season we’ve seen City take an early lead at the Etihad and go on to slaughter teams by four, five and six.
Today, the Citizens struggled to get out of the blocks, and as a result, seemed to fall flat before being awarded a penalty on the hour mark.
The timing of City’s first goal seems to be becoming increasingly important, as the longer it stays goalless, the more champions struggle to play their mesmeric, confident and free-flowing football.
Fabianski deserves more credit
Despite this, Fabianski is proving more and more that he is one of the best shot-stoppers in the league.
Away from home against the champions of England is always going to be a busy game for the opposition's goalkeeper, and today Fabianski kept the scoreline at 0-0 for a very long time, before finally being beaten by a penalty.
Title race is going down to the wire
On a day that both City and Liverpool won again, it became even more evident that these two are not going to be caught by anyone else, and are unlikely to drop many points towards the end of the season.
The two sides have switched positions between first and second for the vast majority of the season, and with the evidence tthat we have to go by at the moment, it seems it could be one of the closest title races in years.