Cristiano Ronaldo’s 98th-minute penalty sent the hosts through after Juventus had scored three to level on aggregate.
Cristiano Ronaldo’s last-gasp penalty on his 150th UEFA Champions League appearance sent Real Madrid through to their eighth consecutive semi-final.
Juventus needed an early fillip having been defeated 3-0 at home in the first leg and it arrived inside two minutes when Sami Khedira darted down the right channel and crossed for Mario Mandžuki? to thump a header past Keylor Navas.
The Croatian striker repeated the trick from Stephan Lichtsteiner’s centre before the interval and the most unlikely of turnarounds became a serious reality when Blaise Matuidi stabbed in the third following a Navas fumble just past the hour.
But, with extra time looming, Medhi Benatia barged over Lucas Vázquez and Ronaldo kept his cool to fire the penalty into the top corner past Wojciech Szcz?sny – who came on for the spot kick after Gianluigi Buffon was dismissed.