- Borussia Dortmund win German Cup with 5-2 win over Bayern Munich
- Dortmund win the domestic double for the first time in their history
- Bayern's confidence shaken ahead of Champions League final next weekend
- Barcelona draw 2-2 at Real Betis in Pep Guardiola's final league game
Poland striker Robert Lewandowski scored a hat-trick as Borussia Dortmund swept aside Bayern Munich 5-2 in the German Cup final to win the domestic double for the first time in their history.
Dortmund maintained their dominance over their Munich rivals with a fifth straight win. They won the German league title by eight points from Bayern.
"That was a cup final which no one from Dortmund could have better imagined," Dortmund coach Jurgen Klopp said. "We were ice cool in our finishing and scored great goals. It's hard to put into words what has happened to us."
For Bayern, it was the worst possible preparation for next Saturday's Champions League final against Chelsea, which will be played at their Allianz Arena ground.
"We cannot complain. Our entire defensive play was a catastrophe," Bayern coach Jupp Heynckes said. "We have to take the blame and we did not deserve to win.
"We still have a major goal in mind and I think we will have all recovered from the shock by the Champions League final. That will be a completely different game."
Bayern started shakily when a mistake by Luiz Gustavo allowed Jakub Blaszczykowski to set up Japanese forward Shinji Kagawa for the first goal after three minutes.
The stage looked set for a close contest though when Arjen Robben made it 1-1 from the penalty spot on 25 minutes after Dortmund goalkeeper Roman Weidenfeller tripped Mario Gomez.
But Dortmund were 3-1 in front by half time thanks to a penalty by Germany defender Mats Hummels after Jerome Boateng's foul on Blaszczykowski and Lewandowski's first from a perfect Kagawa pass.
Dormund all but wrapped up the win when Lewandowski scored his second in the 58th minute and though Ribery pulled one back in the 75th, Lewandowski pounced on an error by goalkeeper Manuel Neuer to head home for his hat-trick with nine minutes remaining.
In La Liga, Pep Guardiola's final league game as Barcelona coach ended in a 2-2 draw at Real Betis.
Daniel Martin scored two goals in three second-half minutes to put Betis 2-1 up but Seydou Keita salvaged a point for Guardiola's side with an injury-time goal shortly after Lionel Messi had hit the post.
Dani Alves was sent off in the 53rd minute after receiving a second yellow card after Sergio Busquets had put Barca ahead in the ninth minute.
Guardiola's final game will be the Copa del Rey final against Athletic Bilbao on May 25.
Saturday's result means champions Real Madrid can win the title by nine points from their Catalan rivals if they win their final game at home to Mallorca on Sunday.
Third-place Valencia lost to 1-0 at Real Sociedad to finish 30 points behind Barcelona in second.
In Turkey, Galatasaray won the league title for the second year in a row after a tense 0-0 draw against Fenerbahce, who needed to win to deny their bitter rivals.
The trophy presentation at Fenerbahce's stadium was delayed for several hours after angry home fans invaded the pitch and clashed with police.
By the time the trophy was finally handed over, only about 200 fans remained in the stadium.
Fenerbahce have endured a torrid season. Their chairman Aziz Yildirim is in jail awaiting a trial for match-fixing and the club were thrown out of the Champions League for their involvement in a scandal that allegedly affected 22 matches.
However, the country's football federation recently cleared Fenerbahce and several other clubs of match-fixing following an investigation.