De thuisploeg kwam in de eerste helft nog op voorsprong door een doelpunt van Joshua Kimmich, maar nog voor rust maakte Marcelo gelijk en in de tweede helft bezorgde invaller Marco Asensio het effectieve Real de winst.
Het duel in de Allianz Arena begon dramatisch voor Arjen Robben. De 96-voudig international van Oranje liep al na vijf minuten een spierblessure op en moest zich laten wisselen. Nog voor rust viel ook Jerome Boateng uit bij Bayern.
De return tussen Real en Bayern wordt volgende week dinsdag om 20.45 uur afgewerkt in Madrid. In die wedstrijd kunnen de Spanjaarden, die zowel in 2014, 2016 als vorig jaar de Champions League wonnen, dus opnieuw een finaleplek veiligstellen.
Liverpool en AS Roma speelden dinsdag al het heenduel in de andere halve finale. De Engelsen waren het grootste gedeelte van de wedstrijd sterker en wonnen met 5-2. Volgende week woensdag staan Roma en Liverpool in Stadio Olimpico in Rome opnieuw tegenover elkaar.
Overwicht
Na het uitvallen van Robben ontspon zich bij Bayern-Real een eerste helft waarin de Duitsers sterker waren. Bayern was via captain Thomas Müller al gevaarlijk geweest en had duidelijk een overwicht, al bleven echte kansen aanvankelijk uit.
Linksback Rafinha testte na zo'n twintig Real-doelman Keylor Navas en aan de andere kant bracht Bayern-keeper Sven Ulreich redding op een schot van Dani Carvajal.
Bij de eerste kans die daar op volgde was het wel raak. Kimmich kon ongehinderd doorlopen op de rechterflank en schoot schuin voor het doel hard raak voor de 'Rekordmeister'. Doelman Navas leek een voorzet te verwachten en ging niet helemaal vrijuit.
Ook nadat Bayern een tweede tegenvaller kreeg te verwerken - na Robben viel ook Boateng uit - bleef de thuisploeg de bovenliggende partij, wat leidde tot kansen voor Mats Hummels en Müller. Toch was het vlak voor rust bij een spaarzame aanval van Real raak: Marcelo schoot een afgeslagen bal hard en laag in de hoek.
Messcherp
In de tweede helft begon Bayern wederom sterker, maar opnieuw was het Real zich effectief toonde. Bij een messcherpe tegenaanval - geholpen door een zwakke bal van Rafinha - legde Lucas Vazquez op tijd af op invaller Asensio, die met een bekeken balletje scoorde: 1-2.
Vrijwel direct daarna verzuimde Franck Ribery de stand weer gelijk te trekken. De aanvaller van Bayern kapte zich vrij en zag Navas vervolgens redding brengen op zijn schot van dichtbij in de korte hoek.
Bayern bleef aanvallen en was nog een paar keer dicht bij de belangrijke gelijkmaker. Müller en Robert Lewandowski liepen elkaar in de weg toen Kimmich de bal teruglegde en Ribery vond wederom Navas op zijn weg. Aan de andere kant dacht Cristiano Ronaldo er 1-3 van te maken, maar scheidsrechter Björn Kuipers keurde het doelpunt terecht af wegens hands van de Portugees.
De Beierse storm hield aan en Real kwam in de slotminuten nog een paar keer goed weg. De ploeg van coach Zinedine Zidane hield stand en lijkt op weg naar een nieuwe Champions League-finale.