Antoine Griezmann’s second half goal booked Atletico Madrid’s place in the Champions League Final at the expense of Bayern Munich.
Real Madrid or Manchester City will be the opposition for Los Colchoneros, the possibility of another Madrid derby – after Los Blancos won the showpiece in 2014 – still alive.
Xabi Alonso netted a free-kick after half-an-hour, the first goal Atletico had conceded since a 3-1 win at Espanyol in early April, levelling the tie after Saul Niguez’s first leg winner.
Bayern could have had a second moments later when Jose Gimenez was whistled for a foul on Javi Martinez as he defended a corner, but Jan Oblak parried Thomas Muller’s penalty.
That wasted spot kick came back to haunt Bayern 10 minutes into the second half when a neat exchange and an assistant’s flag kept down saw Griezmann give Atletico a crucial away goal, leaving Bayern needing two more.
Robert Lewandowski got one of them when he converted from close range after Arturo Vidal’s knock-back. Fernando Torres could have wrapped it up with a penalty given against Martinez – despite the tackle being some distance from inside the area – but Manuel Neuer was equal to it.
Diego Godin returned for Stefan Savic in Diego Simeone’s only change from the first leg, while Pep Guardiola introduced three new faces, Juan Bernat and Thiago Alcantara among those to drop out.
Atleti’s defending was as dogged as expected, Bayern looking to move the ball quickly but not able to prise open a gap in the well-drilled visiting back line. Gabi had two efforts – one testing Neuer more than the other – but the onus was on the hosts to attack.
Filipe Luis switched off to allow Muller to meet Jerome Boateng’s lofted pass and Muller opted to lay off to Robert Lewandowski rather than take the shot himself, allowing Oblak to snuff out the danger.
Oblak’s hands let him down from Franck Ribery’s fierce, swerving effort but he did enough to force Lewandowski into spooning the fumbled ball over the bar, the mid-way point of the first half bringing some last-gasp stuff from Atleti.
Indeed, it was a flailing challenge from Augusto Fernandez that produced the free kick from which Alonso opened the scoring, via a deflection off Gimenez, who had his blushes spared by Oblak a few minutes later.
The feisty game spilled to the sidelines as Guardiola and Simeone exchanged words, Ribery having to keep Cholo from confronting Pep, or possibly one of his assistants, after Lewandowski went down claiming a Juanfran elbow to the ribs.
Atleti made it to the break with just Alonso’s goal against and the tie in the balance, the half time interval offering a chance to regroup.
That they did when Fernando Torres and Griezmann got two-on-two with the Bayern centre-backs, the former freeing the latter, who – perhaps marginally offside – produced a perfect finish when one-on-one with Neuer.
Yannick Ferreira-Carrasco, introduced at half time, gave Atletico an out-ball and while Bayern still had possession and promising positions, Atleti weren’t living on their last nerve quite so much.
Lewandowski changed that by putting Bayern in front on the night and Bayern pressed and pressed for the match-winning third, Atletico’s defence dropping deeper and deeper until Oblak had permanent company in his six-yard box.
Torres’ missed penalty increased Atleti nerves and chances for Lewandowski and Alaba, the latter needing a smart save from Oblak after a deflection, upped the tension. Bayern though, despite having five minutes of injury time, didn’t create another genuine chance as Atletico confirmed their place at San Siro on May 28.
Bayern Munich 2-1 Atletico Madrid [2-2 on aggregate]
Alonso 31 (BM), Griezmann 54 (AM), Lewandowski 74 (BM)
Bayern Munich: Neuer; Lahm, Martinez, Boateng, Alaba; Alonso, Vidal, Muller; Costa (Coman 73), Lewandowski, Ribery
Atletico Madrid: Oblak; Juanfran, Godin, Gimenez, Filipe; Koke (Savic 93), Gabi, Augusto (Carrasco 46) Saul; Torres, Griezmann (Thomas 82)
Ref: Cakir [TUR]