A thrilling advert for Bundesliga football, Ilkay Gündogan struck from the spot to cancel out Mario Mandzukic's second-half opener, only for Arjen Robben to deliver the knockout blow a minute from time to seal the Munich club's first UEFA Champions League triumph since 2001.
It was the showdown everyone had been talking about – the Bundesliga's top two in one, winner-takes-all encounter - and it didn't disappoint. Dortmund’s gung-ho start had Bayern on the back foot, with Robert Lewandowski's curling strike forcing a fingertip save from Manuel Neuer. The Germany No1 was called on again moments later, somehow getting a toe to Jakub Blazczykowski's close-range volley. Dortmund were relentless to say the least, but Neuer was at his unwavering best between the Bayern posts, gobbling up quick-fire efforts from Marco Reus and Sven Bender.
20 minutes had passed before Bayern finally awoke from their slumber as Robben found Mandzukic, whose free header brought the best out of BVB goalkeeper Roman Weidenfeller. Dortmund's ball-watching back four didn't heed the warning and were rather fortunate to see Javi Martinez direct the ensuing corner over the bar. The Yellow-Blacks were rocking, but Robben failed to take advantage, poking straight at the spread-eagle Weidenfeller.
Dortmund’s riposte wasn't long in coming, with Lewandowski once more the instigator - the Poland international left Jerome Boateng on his back, but was unable to steer past the onrushing Neuer. The chances were coming thick and fast and the men in red might have taken the lead but for a combination of hesitancy on the part of Robben and the cat-like reactions of Weidenfeller, the Dortmund stopper twice foiling Bayern's flying Dutchman towards the end of a pulsating first half.
Bayern's momentum started to build before the break and it came as little surprise to see the Bundesliga champions follow up 45 hell-for-leather minutes of Bundesliga-orchestrated action with the opening goal. Franck Ribery's slide-rule pass found the feet of Robben, who held off his marker before rolling the ball across goal for Mandzukic to tap home his third Champions League goal of the season. The lead didn’t last long, though, as Dante sent Reus tumbling in the box with Gündogan calmly sending Neuer the wrong way from the spot.
Weidenfeller found himself in no man's land as Bayern attempted to reassert their authority on the contest, but Neven Subotic was on hand to spare his keeper's blushes with an heroic goalline clearance at the feet of Robben. Dortmund's goalkeeper cut a relieved figure and redeemed himself as the half ticked on, twice throwing up a pair of steel-like wrists to deny David Alaba and Bastian Schweinsteiger from range.
Poised on a knife edge, Bayern summoned one final show of strength with a minute of normal time left to play. Ribery's inventive back-heel found Robben, who burst away from Mats Hummels before slotting past Weidenfeller to send the red and white half of Wembley into raptures, leaving Europe's top dog a German Cup final win away from wrapping up an historic treble in a week's time.
FC Bayern: Neuer - Lahm, Dante, Boateng, Alaba - Martinez, Schweinsteiger - Robben, Müller, Ribery (Gustavo 90') - Mandzukic (Gomez 90')
Dortmund: Weidenfeller - Piszczek, Subotic, Hummels, Schmelzer - Gündogan, Bender (Sahin 90') - Blaszczykowski (Schieber 90'), Reus, Großkreutz - Lewandowski
Goals: 1-0 (Mandzukic 60'), 1-1 (Gündogan 68'), 2-1 (Robben 89')