Steve Clarke recalled Marc Antoine Fortune and Graham Dorrans on the wings, replacing Peter Odemwingie and Zoltan Gera, who both dropped to the bench. Liam Ridgewell also started ahead of Goran Popov, who was also among the substitutes. Youssouf Mulumbu came through a scare on international duty to participate.
As expected, Roberto Mancini had to make do without influential David Silva, while Maicon, Javi Garcia and Jack Rodwell were also absent. Gareth Barry and Micah Richards started, as did Mario Balotelli alongside Carlos Tevez in attack.
Albion started the brighter, fluent in possession, Fortune shooting wide of the far post within the first minute, while a Dorrans free kick came to nothing. Off the ball, shifts were being put in, no City player allowed to enjoy themselves on the ball.
The first effort for the visitors came from a Nasri free kick, which deflected off the wall and narrowly wide of the post. This proved to be the beginning of a performance that most would have expected of the away side, looking threatening around the edge of the area but struggling to break down the Baggies' defence, a back four with a growing reputation.
Towards the middle of the half, things started to become a little hot headed, Yaya Toure and Mario Balotelli receiving plenty of abuse from the home fans, the latter finally being cautioned for a late challenge on Claudio Yacob. Mulumbu, Yacob, Long and Tamas also managed to walk themselves into Mark Clattenburg's book before the break.
The first real talking point of the match came after Vincent Kompany was caught dallying in possession. The visiting captain had the ball swept away from him by the opportunistic James Morrison. The Scot sent Long in on goal, but James Milner upended the Irishman, referee Clattenberg judging it to be a goalscoring opportunity and Milner saw red.
The play was in the balance for the remainder of the half, Yacob shooting wide and Dorrans launching set pieces into the opposing box at every opportunity. Balotelli went on a mazy run down the other end, only to be thwarted by Foster and the Italian was denied again by an Olsson intervention.
Within a minute of the restart Ben Foster was forced into preventing the impressive Tevez, the Argentinian with a ferocious strike from the edge of the area tipped behind. Gael Clichy found himself in a position to shoot, his right footed effort blocked by the chest of Tamas. The end-to-end beginning of the second half showed signs of excitement, both teams very much capable of scoring.
Tevez blasted over a free kick from thirty yards or more, while Richards headed over from close range following a goalmouth scramble as the result of another set piece.
Fortune inexplicably handled the ball on the edge of the area, the free kick wasted by Yaya Toure.
Then came the substitutions that changed the game. Peter Odemwingie replaced Graham Dorrans for the Baggies, Aguero and Dzeko entering the fray at the expense of Barry and Balotelli.
The home side took the lead on 67, Odemwingie cutting in from the left and Shane Long was on hand to redirect the Nigerian's skewed shot past Hart.
Gera came on in the place of Morrison soon after, and it was the Hungarian who conceded the debatable free kick on 80 which led to the goal. After sliding in on Tevez, the striker got up to whip a problematic ball in to the host of players, Dzeko rising above Foster to nod into an empty net.
Substitute Lukaku, who replaced goalscorer Long, nearly restored Albion's lead when the home side broke, Odemwingie putting an inviting ball across the face of goal, but the Belgian couldn't quite make contact.
Lukaku had another chance to add his name to the score-sheet soon after, but his header from a Ridgewell cross was straight at Hart.
Into stoppage time and Hart once again showed why he is among the best goalkeepers in the world when he tipped over a stupendous overhead kick from loanee Lukaku. The resulting corner, however, turned into a deadly counter as Aguero slid the ball across to Dzeko to finish first time, giving City all the points.
Match ratings: WBA- Foster 6, Tamas 6, McAuley 7, Olsson 7, Ridgewell 6, Yacob 7, Mulumbu 7, Morrison 6 (Gera 5), Dorrans 6 (Odemwingie 6), Fortune 6, Long 7 (Lukaku 6)
MC- Hart 7, Richards 7, Kompany 7, Lescott 8, Clichy 7, Nasri 6, Yaya 6, Milner 5, Barry 6 (Dzeko 7), Tevez 8 (Kolarov 5), Balotelli 6 (Aguero 6)