There was plenty of hype surrounding the tie pre-match as the two heavy favourites for the competition were drawn against each other in the last four.
Real Madrid were the favourites going into the game, not that you would have noticed in the first half as Bayern dominated.
The hosts came flying out of the blocks, almost catching their opponents cold early on, though they were dealt a blow themselves as Arjen Robben had to be withdrawn with just nine minutes on the clock.
Both sides exchanges speculative effors before the hosts found the breakthrough just before the half-hour mark.
Sven Ulreich took a goal kick quickly and the ball was worked to James Rodriguez , who sent Josh Kimmich scampering away down the right, with Marcelo caught upfield out of position.
With men in the middle, Kimmich looked to cross but slightly screwed his effort and it flew beyond Keylor Navas and into the back of the net at the near post.
It could and should have been two shortly afterwards as Thiago Alcantara slipped Franck Ribery in one-on-one but his first touch let him down and Navas gathered.
From that moment on everything that could go wrong, did for the home side.
Defender Jerome Boateng limped off with a hamstring problem, before Real equalised against the run of play on the stroke of half-time just minutes after Mats Hummels should have converted a Robert Lewandowski flick-on at the far post.
A cross from the right was allowed to hang in the air and bounce without being cleared and Marcelo seized on it to drill home his third Champions League goal of the season to level the tie.
25 April 2018
With that, the two sides went in level at the break, but not before Bayern had twice threatened again from set-pieces, with Lewandowski heading straight at Navas and Muller unable to reach another of the Pole's flick-ons.
- The Asensio effect -
Seeking inspiration, Zinedine Zidane turned to Marco Asensio at the break and he responded perfectly, slotting beyond Ulreich to give the visitors the lead within 12 minutes of his introduction.
Veteran defender Rafinha presented the ball to Asensio with the rest of the Bayern backline in the Rela box following a corner and the former Real Mallorca man quickly set Lucas Vazquez racing away. Vazquez drew Rafinha to him, before squaring for Asensio to fire across Ulreich and into the far corner to give his side the lead.
25 April 2018
Real limited their attacking threat from that point on as they looked to protect their lead, also suffering a blow as Dani Cavajal was forced off.
Lewandowski and Muller contrived to get in each other's way when they looked certain to turn home Javi Martinez's header back across goal with just over 20 minutes to go, whilst Ulreich had to be alert to keep out a low effort from substitute Karim Benzema just minutes after Ronaldo saw a well-taken effort chalked off for handball.
With just two minutes to go, Bayern created the chance they need. Thiago slipped in Lewandowski and the Pole found himself one-on-one with Navas, but his goalscoring touch deserted him and he could only chip an effort wide.
Real held out to run out 2-1 winners in the end, taking a victory and two precious away goals to the Bernabeu ahead of next week's second leg.
25 April 2018