Cristiano Ronaldo's injury-time penalty put holders Real Madrid through to the Champions League semi-finals after holding off a stunning Juventus comeback.
Ronaldo's coolly-taken 97th-minute penalty into the top corner came after Medhi Benatia brought down Lucas Vazquez in the box.
Juve goalkeeper Gianluigi Buffon, in what might be his last Champions League appearance, was sent off by English referee Michael Oliver after awarding the spot-kick, for foul and abusive language.
Real, Champions League winners in three of the past four seasons, came into the second leg leading 3-0, helped by Ronaldo's stunning bicycle kick.
But the Serie A leaders got off to a dream start when Mario Mandzukic headed in from Sami Khedira's cross after just two minutes and Mandzukic got a second before half-time.
Blaise Matuidi pounced to capitalise on Keylor Navas' fumble to level the tie on aggregate, before the dramatic ending.
Real join Liverpool, Roma and Bayern Munich in the last-four draw, which takes place in Nyon on Friday at 12:00 BST.
Chaotic ten minutes in Madrid
The game looked to be heading for extra time before a chaotic final few minutes saw even the calmest of players lose control.
- 90th minute: Benatia push on Vazquez is adjudged to be a foul and Oliver points to the spot. Benatia booked and furious Juve players surround the referee, incensed at the decision.
- 93rd minute: Buffon remonstrates too vociferously, screaming and pointing his finger in the direction of Oliver and is shown a red card.
- 96th minute: Juve striker Gonzalo Higuain is brought off and replaced by on-loan Arsenal goalkeeper Wojciech Szczesny.
- 97th minute: Ronaldo despatches the penalty into the top right-hand corner.
- 98th minute: Ronaldo is booked for taking off his shirt while celebrating in front of the home supporters.
- 99th minute: Referee blows for full-time.
More to follow.