Atletico Madrid reached the Champions League final for the second time in three seasons, going through on away goals after a 2-1 defeat at Bayern Munich, in which both sides missed a penalty, with the tie finishing 2-2 on aggregate.
Atletico, who will face either city rivals Real Madrid, who beat them in the 2014 final, or Manchester City, who meet in the second semi-final tomorrow, also spoiled Bayern's treble chances after the Spaniards won the first leg 1-0 last week.
Bayern took the lead with a Xabi Alonso goal in the 31st minute but Atletico levelled through Antoine Griezmann's seventh goal of the competition in the 54th. Robert Lewandowski set up a dramatic finale with his 74th minute goal but it was not enough.
Thomas Mueller missed a first-half penalty for Bayern and Atletico's Fernando Torres had an 85th minute spot kick saved as Bayern suffered a third straight elimination by a Spanish team at this stage in their three seasons under Pep Guardiola.
"They were better, but we scored an away goal, which was important. We need to keep grounded and first of all think of the Liga before the final," said Griezmann, whose side are level on points with leaders Barcelona in the Spanish title race.
Guardiola, in his final Champions League home game at Bayern before his move to Manchester City for next season, started with defender Jerome Boateng, who returned from a three-month injury break at the weekend, and Franck Ribery, himself back from injury.
With a newly-discovered intensity, the Bavarians were dominant in the first half, successfully navigating through the Spaniards' high pressing game and grabbing their first chance with a Lewandowski header in the 12th minute.
The Poland striker narrowly failed to connect inside the box while Arturo Vidal's left-footed effort was plucked out of the air on its way to the top corner by keeper Jan Oblak.
Oblak came to the rescue once more in the 20th, denying Lewandowski from close range, but the Spaniards looked rattled, with the tables turned and Bayern doing the pressing and having 12 shots compared to Atletico's two by the half hour.
Xabi Alonso finally got Bayern a deserved lead, his low free kick clipping Atletico's Jose Maria Gimenez to beat Oblak and cancel out Atletico's first-leg advantage.
Bayern pushed for a second goal before the break and thought they would have it when Javi Martinez was brought down by Gimenez in the box to earn a penalty three minutes later.
However, Oblak saved Mueller's spot kick and Lewandowski's effort from the rebound to keep the Spaniards in the game.
Atletico stunned the home crowd after the break with their first real chance of the game when Frenchman Griezmann linked up with Fernando Torres and charged through to beat Neuer with a fine finish.
With Bayern now on the backfoot and needing two more goals to advance, Atletico grew bolder and Juanfran's shot on the hour sailed narrowly wide.
Lewandowski put Bayern back in front on the night with a close-range header to trigger a dramatic finale but, even after Neuer saved Torres' spot kick, the Germans could not find another goal and their Champions League hopes were over.