It looked like being a case of how many when Thomas Müller and Mario Götze fired the holders into a 2-0 lead, but City hit back through David Silva, Aleksandar Kolarov and James Milner to hand Bayern their first defeat of the season.
An early error from City defender Joleon Lescott was the precursor to a nightmarish start for the visitors, who found themselves a goal down just five minutes into the contest. Dante showed great vision to pick out Müller, who skipped the offside trap, took the ball in his stride and slotted past stranded goalkeeper Joe Hart for his third Champions League strike of the current campaign.
With their tails up, Bayern went for the jugular and got their just reward when Mario Mandzukic squeezed a bouncing ball through for the unmarked Götze to slot into the net from close range. When City did break free, Bayern’s Manuel Neuer was equal to Milner’s stinging volley, before Hart followed suit at the other end to keep out Toni Kroos’ testing 20-yard drive.
There was no faulting Bayern going forward, but the defending champions left much to be desired when tested defensively for the first time. Jesus Navas’ deep cross sailed onto the head of Milner, who returned the ball with some interest, allowing Silva to steal a yard on Dante and bundle home an unlikely lifeline in the 27th minute. A setback of sorts, Bayern nevertheless finished the half the stronger, with Götze and Müller going close to restoring their side’s two-goal advantage.
It was Bayern’s game to lose, but a sluggish start to the second half threatened to transform the complexion of the game in its entirety. Kolarov sent Neuer the wrong way from the penalty spot after Dante was adjudged to have brought down Milner, who showed no ill effects from the challenge three minutes later, profiting from Jerome Boateng’s mistake and sending the ball into the bottom corner to move City to within one goal of topping the group.
Unbeaten run ended
A lapse in concentration at the back almost handed the visitors the sought-after three-goal lead, but Neuer was on hand to spare Dante’s blushes after the Brazil international momentarily switched off to let in substitute striker Alvaro Negredo.
With time fast running out, Bayern resorted to an almost unheard of shoot-on-sight policy, before Ribery tumbled in the area under Pablo Zabaleta’s challenge to muted penalty appeals. Guardiola’s men were unable to reassert their authority on the tie, though, instead succumbing to their first loss in eleven Champions League outings.
Bayern München: Neuer - Lahm, Boateng, Dante, Alaba - Thiago, Müller, Kroos - Ribery, Götze (Martinez 54’), Mandzukic (Shaqiri 68’)
Manchester City: Hart - Kolarov, Lescott, Demichelis, Richards (Zabaleta 15’) - Fernandinho, Garcia, Milner – Silva (Negredo 72’), Navas, Dzeko (Rodwell 88')
Goals: 1-0 Müller (5’), 2-0 Götze (11’), 2-1 Silva (27’) 2-2 Kolarov (58’), 2-3 Milner (61’)