Madrid came from behind to win 2-1 last week in the first leg at the Allianz Arena, and sealed their progression with a 4-3 aggregate triumph despite an unconvincing performance on Tuesday.
Bayern took the lead in the third minute, Joshua Kimmich opening the scoring following a mistake by Madrid captain Sergio Ramos.
The hosts were quick to reply but it was Karim Benzema and not Cristiano Ronaldo, making an outfield record 152nd appearance in the competition, who took centre stage.
Benzema’s close-range header ensured Madrid’s deficit lasted only eight minutes, and 21 seconds into the second half he was presented with a gift when Ulreich misjudged a back-pass from Corentin Tolisso.
There was another twist as James Rodriguez, on a two-year loan spell at Bayern from Madrid, levelled the tie on the night with a goal he did not celebrate but, despite intense pressure from the away team, Zinedine Zidane’s men held on to move within a win of a third successive European title, and now await Liverpool or Roma in the Kiev final on May 26.
So often the hero at the other end for Madrid in games of such magnitude, it was an error from skipper Ramos that enabled Bayern to get the start they needed.
He failed to clear Thomas Muller’s lofted cross into the box and Kimmich was there to pounce and slot home with a first-time finish.
Madrid soon levelled matters on the night, capitalising on slack marking from the visitors.
Marcelo delivered a deep cross from the left and Benzema somehow managed to escape the attentions of the returning David Alaba to head beyond Ulreich.
Yet Madrid continued to look vulnerable at the back and Bayern had a strong claim for a penalty dismissed by referee Cuneyt Cakir, who refused to point to the spot after Ramos appeared to bundle over Robert Lewandowski in the box.
A fine run from Franck Ribery and a clever turn and shot from Muller forced a low save from Keylor Navas, who then denied Lewandowski after a surging run from Mats Hummels, the subsequent looping rebound nodded down by Muller but then fired over on the volley by James as Madrid again somehow survived.
Ulreich turned a low Ronaldo drive wide as the frenetic pace continued, with Ramos heading into the side-netting from the resulting corner, before another Bayern penalty appeal was waved away after Marcelo appeared to handle a Kimmich cross.