Dortmund do the double
Bayern Munich were gunning for a record-extending 16th DFB Pokal triumph, while Dortmund were vying for a third.
The DFB Pokal mascot Paule the Eagle is sandwiched by Bayern Munich's Bernie the Bear and Dortmund's Emma the Bee.
Bayern and Dortmund were led out onto the pitch by Germany's reigning Olympic biathlon champion Magdalena Neuner.
Shinji Kagawa may be on his way out of Dortmund this summer but the Japan star - watched by, among others, Sir Alex Ferguson - opened the scoring for his side.
Arjen Robben equalised for Bayern Munich, levelling the scores on 25 minutes.
But Mats Hummels sent Dortmund back into the lead just before half-time, beating Manuel Neuer from the penalty spot.
Dortmund's Polish striker Robert Lewandowski then claimed a 36-minute hat-trick to put the league champions in control.
The final score of 5-2 was an embarrassing one for Bayern ahead of next week's Champions League final, while Dortmund could celebrate a first ever league and cup double.
Pep Guardiola took charge of Barcelona for the last time in the league as the Catalans travelled to Real Betis.
Sergio Busquets gave Barca a first-half lead after rising to head home a corner, though Dani Alves was sent off before the half was through.
Ruben Castro equalised for Real Betis in the second half, however, before adding a second for the hosts to put them ahead.
There was to be one final twist in the tale as Seydou Keita popped up to head home a stoppage-time equaliser for Barca.