They were frustrated for nearly half an hour but struck twice in two minutes, first when Gabriel Jesus tapped in from Kevin de Bruyne's cut-back and then when Jesus turned provider to set up De Bruyne who curled a shot past Ben Foster.
Yaya Toure finished off another slick City move in the 57th minute following a one-two with Sergio Aguero.
City need just a point from their final game away to Watford to make absolutely certain of a top-four finish.
One of the biggest cheers of the night was when substitute Pablo Zabaleta came on just past the hour to replace David Silva. The club announced this week that the 32-year-old Argentine right back will leave at the end of the season after nine years at City in which he twice won the title.
The mood was slightly dampened late on when West Brom grabbed a late consolation from Hal Robson-Kanu.
With one game to play, City have 75 points to fourth-placed Liverpool's 73.
Arsenal, in fifth have 72, and could only catch City if Pep Guardiola's side lost to Watford on the final day and Arsenal beat Everton and there was a five-goal swing in goal difference.
Enter a name and e-mail address and we will e-mail this website link too them.