Mario Gomez gained a small measure of revenge for Bayern Munich as his late winner earned the German side a valuable Champions League win against Internazionale. Gomez netted from close range after Julio Cesar failed to hold Arjen Robben's shot late on, giving Bayern a first-leg advantage against the side who beat them in last season's final.
Esteban Cambiasso missed the best chances for Inter, who also saw striker Samuel Eto'o draw a blank in front of goal as the Bayern goalkeeper Thomas Kraft pulled off several saves.
"Inter surprised me," Bayern coach Louis van Gaal said afterwards. "They played to win and that is very beautiful. The whole world has seen a wonderful game and I think both sets of fans could be happy with this game. That is what football is about and having enjoyment in football. In the final last year, Inter attacked less than they did today and got a better result. But that's football."
Inter's Andrea Ranocchia, on his Champions League debut, missed the first chance as he volleyed wide when well placed from Wesley Sneijder's free-kick. Julio Cesar was lucky when he got down late to a left-footed shot from 30 yards out by Luiz Gustavo, which went just wide of the right-hand post.
Eto'o then went down under a challenge from Anatoliy Tymoschuk inside the area, but Hungarian referee Viktor Kassai was not interested in any penalty claims. Gustavo then saw another shot from distance deflected wide for a corner as Bayern came more into the game.
But the visitors had an escape when Eto'o worked the ball into the right side of the area and threaded it through the defence for an unmarked Cambiasso, but his shot from close range was straight at Kraft who saved with his legs.
Robben then crossed the ball in but Franck Ribéry's header hit the top of the bar. Eto'o caused Kraft an anxious moment when he charged down a pass across the Bayern defence but the goalkeeper was able to race back and gather the ball on his line.
Inter paid for those wasted chances when Bayern shocked the home crowd with a late winner. Julio Cesar could not hold Robben's shot and Gomez was first to the loose ball to net the rebound.
Internazionale (4-4-2): Julio Cesar; Maicon, Ranocchia (Kharja, 73), Lucio, Chivu; Zanetti, Cambiasso, Motta, Sneijder; Stankovic, Eto'o. Substitutes not used Castellazzi (gk), Mariga, Materazzi, Pandev, Coutinho, Nagatomo.
Bayern Munich (4-4-2): Kraft; Lahm, Tymoschuk, Badstuber, Pranjic (Breno, 38); Schweinsteiger, Gustavo, Robben, Muller; Ribéry, Gomez. Substitutes not used Butt (gk), Van Buyten, Altintop, Ottl, Klose, Kroos.
Referee V Kassai (Hungary).