Champions Bayern Munich scored three times inside the last 10 minutes to win 5-4 at RB Leipzig in a free-flowing game, with the Bavarians having secured the title two weeks ago and the hosts certain of second place.
Bayern's Robert Lewandowski scored his second goal of the afternoon in the 84th minute to cut the deficit to 4-3. David Alaba's stoppage-time free kick drew them level and Arjen Robben's last-gasp winner completed their sensational turnaround after having trailed 3-1 and 4-2.
Meanwhile Borussia Dortmund kept the upper hand in the battle for third place despite a 1-1 draw at Augsburg on Saturday as they stayed ahead of fourth-placed Hoffenheim on goal difference on a frantic penultimate matchday of the season.
Dortmund, through to the German Cup final later this month, are level on 61 points with Hoffenheim, who crushed Werder Bremen 5-3 with two goals from Andrej Kramaric, but have a better goal difference going into the last matchday next week.
There was bad news early on for Dortmund with midfielder Julian Weigl rushed to hospital after only 20 minutes following a horrific ankle injury with his foot caught in the grass and twisting 180 degrees.
Alfred Finnbogason then put the hosts ahead in the 28th minute but Pierre-Emerick Aubameyang levelled only four minutes later with his 29th goal of the campaign with Dortmund controlling the game with more than 70 percent possession.
The visitors upped the pressure after the break but could not find a winner against disciplined Augsburg, who are in 14th place on 37 points.
Hamburg SV continued their battle to avoid relegation by scoring a stoppage time equaliser through substitute Pierre-Michel Lasogga to earn a 1-1 draw at Schalke 04.
The result kept Hamburg, the only team to have played in the top division every season since the Bundesliga's creation in 1963, in the relegation playoff spot but sent 17th-placed Ingolstadt into the second division, joining already-relegated Darmstadt 98, who lost 2-0 to Hertha Berlin.
VfL Wolfsburg's Mario Gomez grabbed an 58th minute equaliser against Borussia Moenchengladbach for his 16th goal of the campaign that kept the Wolves two points ahead of Hamburg, whom they face on the last matchday.
The game was interrupted in the 79th minute for about half an hour due to a storm.