Having scored in the first leg, Alvaro Morata stunned his old club again as Juventus beat Real Madrid to reach the Champions League final.
Alvaro Morata returned again to haunt his former club as he struck a fatal blow to Real Madrid's UEFA Champions League defence by firing Juventus into the final with a 3-2 aggregate victory.
Juve went into Wednesday's second leg of their semi-final at the Santiago Bernabeu holding a 2-1 advantage, but they were on the back foot throughout the first half in Madrid.
Cristiano Ronaldo gave Real an away-goal advantage from the penalty spot in the 23rd minute after Giorgio Chiellini had felled James Rodriguez in the area, and at that stage the home side looked good value for their lead on the night.
Carlo Ancelotti's men continued to threaten at the beginning of the second period too, but it was Morata - who played in last year's final for Real before being allowed to leave the club - who proved the difference.
Having also scored in the first leg, he found the net against the run of play shortly before the hour mark this time to stun a partisan crowd into silence.
Real pushed hard for the goal that would have forced the match into an additional 30 minutes and preserve their hopes of a mouthwatering El Clasico final, but Juve clung on to book their meeting with Barcelona in Berlin on June 6.
The Real team bus was welcomed to the stadium by the kind of throng usually reserved for a victory parade ahead of the match and Marcelo, roared on by an equally fervent crowd inside the Bernabeu, carved out the hosts' first opportunity.
The full-back raced down the left before whipping in a cross for Gareth Bale, but the Welshman – in need of a strong showing following heavy criticism of his first-leg display – headed harmlessly over.
Real continued to look the more likely to break the deadlock in the early stages and, after bringing the ball down well in the box, Karim Benzema, who was back in the team following seven matches out with a knee injury, fired high and wide.
Ronaldo saw a free-kick drift over off the arm of Arturo Vidal, although there were few Real appeals for handball, before the Chilean drew a diving save from Iker Casillas with Juve's first shot at goal.
A dipping Bale effort had Gianluigi Buffon sprawling after 20 minutes, but the goalkeeper was unable to keep out Ronaldo's spot-kick soon afterwards – diving right as the ball flew straight down the middle.
The penalty had been awarded for Chiellini's clumsy tackle on Rodriguez, and chances for Ronaldo and Benzema threatened to compound Juve's misery as Real ended the half in the ascendancy.
Rodriguez went down in the box again shortly before the break, but this time he was shown a yellow card for simulation having tumbled under the challenge of Vidal.
Claudio Marchisio sent an effort just wide of the left-hand post at the beginning of the second period, but Marcelo reminded Juve of the threat posed by the home side with a shot that veered just off target.
However, the visitors re-established their aggregate advantage three minutes from the hour. And it was that man Morata who took centre stage.
Casillas punched clear from a cross, but Juve kept the ball alive and Morata eventually sent a shot bouncing over the head of the Spanish goalkeeper and into the back of the net from Paul Pogba's nod down.
As had been the case when he opened the scoring in the first leg, Morata opted not to celebrate.
Bale saw numerous chances to test Buffon come and go as Real sought the goal that would bring about extra-time, while Marchisio had a golden opportunity to put the match beyond doubt kept out by Casillas.
That missed chance mattered little at the final whistle, though, as Juventus, who survived late penalty appeals for a Patrice Evra challenge on substitute Javier Hernandez, celebrated a first final since 2003, having last won the tournament back in 1996.