Bayern Munich have secured a seventh consecutive Bundesliga title thanks to their 5-1 win over Eintracht Frankfurt on an emotional final day of the season.
Borussia Dormtund's 2-0 win over Borussia Mönchengladbach ensured that Bayern had to pick up all three points to avoid leaving the title race up to goal difference.
And it took Bayern Munich less than four minutes to break the deadlock at the Allianz Arena, with Kingsley Coman kick-starting their title party by finding acres of space before sending a cool finish past an in-form Kevin Trapp.
After seeing some shots kept out of the back of the net, Gnabry finally found a way past Frankfurt's goalkeeper but his stunning left-footed effort was ruled out by the Video Assistant Referee for an earlier offside.
Bayern Munich were made to pay for their missed chances in the first half when half-time substitute Sébastien Haller levelled the scoreline just five minutes after the break.
But within the blink of an eye David Alaba restored the hosts' lead after goalkeeper Trapp fumbled Thomas Müller's long-range effort, allowing the Austrian to poke the ball into an empty net from six yards out.
Their lead was doubled soon after when Renato Sanches fired a shot past Trapp from close range to open his account in the Bundesliga, all but securing all three points and the league title in the process.
Substitutes Franck Ribéry and Arjen Robben then crowned their last ever game at the Allianz Arena with a goal apiece in the closing stages of the match, with the former's proving to be the pick of the bunch on Saturday.
Key Talking Point
All the pressure was on Bayern Munich's shoulders ahead of kick-off but the Bavarian giants shrugged that aside to put in an outstanding performance against Eintracht Frankfurt.
The Reds have at times been European football's example of 'if you can't handle the heat, get out of the kitchen' and often rely on late goals to get out of sticky situations.
They scored with their first chance of the match and had it not been for some heroics from Kevin Trapp, they would have been four of five clear by half-time.
It hasn't always been vintage Bayern Munich this season, but being crowned as champions and the manner in which they went about it shows exactly why Niko Kovač should be given another shot in the dugout next season.
Ulreich (6), Kimmich (7), Süle (6), Hummels (8), Alaba (7); Thiago (8), Goretzka (6); Gnabry (8), Müller (7), Coman (8), Lewandowski (7).
Substitutes: Sanches (8), Ribéry (10*), Robben (10*).
STAR MAN - Franck Ribéry & Arjen Robben
In terms of on the pitch, there were a couple of players who proved to be the difference makers against Eintracht Frankfurt.
But the biggest cheers from the stands were reserved for the introductions of Bayern Munich's iconic duo Franck Ribéry and Arjen Robben, who - along with defender Rafinha - were playing their last ever league game for the club.
It was written in the stars for Franck Ribéry to get on the scoresheet and he's just made it 4-1 with an outstanding solo goal. His 124th for the club. #FCBSGE— Ben • Carter (@ben_crtr) May 18, 2019
Ribery just scored a goal Messi would be proud of, at the age of 36, in his final game in Munich. Legend!— Cristian Nyari (@Cnyari) May 18, 2019
Ribery just did a madness. He went past two defenders like they weren't there and he chipped the goalkeeper to make it 4-1 to Bayern. This man is 36 years old and still running the show. Quality.— FutbolBible (@FutbolBible) May 18, 2019
It was a fairytale at the Allianz Arena as both players got on the scoresheet, meaning that the adopted Bavarian legends are leaving the club with a combined 732 appearances to their name, having scored 268 goals and claimed 283 assists between them.
Trapp (8), Abraham (6), Hinteregger (7), Hasabe (5); da Costa (6), Gaćinović (6), de Guzman (5), Kostić (6); Jović (6), Rebić (7).
Substitutes: Haller (7), Torró (6).
It might be the end of the Bundesliga season, but Bayern Munich manager Niko Kovač will be looking to secure the domestic double when they take on RB Leipzig in the DFB-Pokal final next weekend.