Bundesliga
The 2018/19 Bundesliga title race between Bayern Munich and Borussia Dortmund was one of the tightest and most exciting in recent years. The lead at the top changed hands five times over the 34 Matchdays, there was a nine-point gap and drama down to the final day.
Want to relive all the thrills and spills one more time? bundesliga.com has you covered with this blow-by-blow account…
Matchday 1
Bayern Munich 3-1 Hoffenheim
Borussia Dortmund 4-1 RB Leipzig
It took one weekend of action in 2018/19 to know we were in for a serious title race. As is tradition, Bayern kicked off the season at home on the Friday night, beating Hoffenheim 3-1 thanks to goals from Thomas Müller, Robert Lewandowski and Arjen Robben.
It looked an ominous start for the rest of the league in Niko Kovac’s first Bundesliga game in charge, but Dortmund weren’t to be outdone on Lucien Favre’s debut and put four past Leipzig, who finished the season with the best defence, after Jean-Kevin Augustin had scored inside a minute for the visitors. With 90 of the eventual 3,060 minutes played, BVB were top, ending Bayern’s stint of 25 Matchdays in first place.
Matchday 2
Hannover 0-0 Borussia Dortmund
VfB Stuttgart 0-3 Bayern Munich
As breathtaking as Dortmund were against Leipzig, they struggled the following week at Hannover and failed to find a breakthrough with any of their eight efforts on goal. Bayern responded in ruthless fashion the following evening though, with summer signing Leon Goretzka opening his account before Lewandowski and Müller rounded off a comfortable win in Stuttgart. The champions were ahead.
Matchday 3
Borussia Dortmund 3-1 Eintracht Frankfurt
Bayern Munich 3-1 Bayer Leverkusen
It was honours even as we motored on into September with both sides recording 3-1 home wins to maintain the two-point gap. Although while Borussia were celebrating Paco Alcacer’s maiden goal for the club, Bayern were dealt a cruel blow when Corentin Tolisso, who had just won the World Cup with France, suffered a knee injury that ruled him out until the very end of the season.
Matchday 4
Hoffenheim 1-1 Borussia Dortmund
Schalke 0-2 Bayern Munich
Another away game, another slip for Dortmund as they salvaged a point at Hoffenehim thanks to Christian Pulisic’s 84th-minute equaliser. Bayern, on the other hand, kept up their 100 per cent record with a victory at Schalke. With four games gone, Borussia were four points off the defending champions and in fact separated by surprise starters Hertha Berlin.
Watch: Augsburg snatched a late draw in Munich!
Matchday 5
Bayern Munich 1-1 Augsburg
Borussia Dortmund 7-0 Nuremberg
The Munich club had made a good start to the 2018 Oktoberfest period, a time in which they traditionally excel, but in Matchday 5’s Bavarian derby with Augsburg they failed to win a competitive game for the first time under Kovac. Former Bayern defender Felix Götze, the brother of Dortmund’s Mario, was the culprit and perhaps inspired Borussia to one of their most fluid performances of the season, smashing promoted Nuremberg 7-0 at the Signal Iduna Park.
Matchday 6
Hertha Berlin 2-0 Bayern Munich
Bayer Leverkusen 2-4 Borussia Dortmund
It was an Englische Woche to forget for Bayern as they hit a wall in Berlin and were stunned 2-0 by Hertha at the Olympiastadion. Twenty-three hours later, however, it looked like the record champions had been handed a lifeline with Dortmund trailing 2-0 at half-time in Leverkusen. But just over 45 minutes later Borussia were in ecstasy. Quickfire goals from Jacob Bruun Larsen and Marco Reus had the visitors level before supersub Alcacer did what he does and bagged a brace in the closing minutes. It was a result that sent Dortmund top, where they would remain until March.
Matchday 7
Borussia Dortmund 4-3 Augsburg
Bayern Munich 0-3 Borussia Mönchengladbach
Dortmund looked like opening the door once again to their pursuers when they twice trailed Augsburg at home. It took yet another late Alcacer show, this time a free-kick in the 96th minute, to get BVB over the line and claim three points. It was a message down to Munich that they will not be beaten and one that appeared to rattle Bayern as they were beaten 3-0 by Gladbach at the Allianz Arena. The gap after seven games had now turned to four points in Dortmund’s favour, while the champions were languishing down in sixth.
Watch: Alcacer's incredible second half hat-trick from the bench!
Matchday 8
VfB Stuttgart 0-4 Borussia Dortmund
Wolfsburg 1-3 Bayern Munich
Favre’s charges were really picking up the pace now as they went to Stuttgart and dispatched the hosts with ease – Jadon Sancho getting the victory underway inside just three minutes. But for the first time in a month, Bayern had a response of their own and secured a win in Wolfsburg thanks to Lewandowski’s brace and a James Rodriguez cherry on top. The Reds were back in the top four but still four points off the unbeaten leaders.
Matchday 9
Borussia Dortmund 2-2 Hertha Berlin
Mainz 1-2 Bayern Munich
For the first time since Matchday 4, Dortmund finally slipped up themselves with Hertha again causing problems for the league leaders. Salomon Kalou twice equalised for the capital club at the same time as Bayern secured a workman-like win at plucky Mainz thank to Thiago’s second-half strike. Status quo was seemingly restored with Borussia and Bayern in the top two and separated by just a couple of points.
Matchday 10
Bayern Munich 1-1 Freiburg
Wolfsburg 0-1 Borussia Dortmund
Any sense of relief in Munich was shorted lived, however. They thought they’d battled to a win against Freiburg when Serge Gnabry scored in the 80th minute, but Lucas Höler hit back for the visitors a minute from time to end their 14-match losing run in the Bavarian capital. At the other end of the country, Dortmund were able to get themselves over the line with Reus scoring the only goal of the game at Wolfsburg and extending his boyhood club’s lead at the top to four points again.
Watch: Relive Dortmund's stunning comeback Klassiker win!
Matchday 11
Borussia Dortmund 3-2 Bayern Munich
It was billed as one of the biggest Klassikers in years. Bayern headed to Dortmund in desperate need of cutting their four-point gap and for long periods looked likely to do so. The champions led twice thanks to former BVB striker Lewandowski, but twice the title challengers hit back through the talismanic Reus. With little over a quarter of an hour left to play, Borussia hit a telling blow thanks to the right boot of substitute Alcacer. It was being whispered quietly at the Signal Iduna Park, but the Black-Yellow faithful were starting to believe this could be their year with perennial champions Bayern already seven points behind and now down in fifth place.
Matchday 12
Bayern Munich 3-3 Fortuna Düsseldorf
Mainz 1-2 Borussia Dortmund
Autumn was turning into hell at home for Bayern as they made it four Bundesliga games without a win at the Allianz Arena, this time at the hands of promoted Fortuna and hat-trick hero Dodi Lukebakio. His 93rd-minute equaliser was celebrated just as hard in Düsseldorf as it was in Dortmund, who had battled their way past Mainz at the same time. It was Bayern’s worst start in eight years, their longest run without a clean sheet in 18 years and they were nine points off top spot – a deficit they had never before overturned.
Matchday 13
Borussia Dortmund 2-0 Freiburg
Werder Bremen 1-2 Bayern Munich
Dortmund were rarely troubled at home to Freiburg as Reus and Alcacer ensured another victory, while Bayern used the boost of facing one of their favourite opponents (their 15-match winning run against Bremen coming into the game was the longest of any team against another in Bundesliga history) to secure their first league win in over a month. Serge Gnabry scored both goals against his former club, but the gap remained at nine points.
Watch: Sancho was the hero for BVB in the first Revierderby!
Matchday 14
Bayern Munich 3-0 Nuremberg
Schalke 1-2 Borussia Dortmund
And so it remained after 14 games, with Bayern untroubled in this Bavarian derby against Nuremberg, although BVB were made to fight hard in their Revierderby at Schalke. Thomas Delaney had them ahead early on but Daniel Caligiuri would bring the Royal Blues level just after the hour mark. Still, Dortmund would win the derby for the first time since November 2015 thanks to English teenager Sancho, who dedicated his winner to his recently deceased grandmother.
Matchday 15
Hannover 0-4 Bayern Munich
Borussia Dortmund 2-1 Werder Bremen
The following weekend again saw no change at the top with the champions recording a routine win at struggling Hannover, while the leaders registered a 2-1 victory at home to Bremen, thereby extending their unbeaten start to the season to a club-record 15 games.
Matchday 16
Fortuna Düsseldorf 2-1 Borussia Dortmund
Bayern Munich 1-0 RB Leipzig
That was where the record would end for BVB as they suffered a somewhat shock defeat to promoted Düsseldorf on the Tuesday of the season’s second Englische Woche. Down in Munich, it went without saying that they had to take this chance, but it wasn’t going to be easy with Leipzig in town the following night. And it was a gruelling affair for the champions as they huffed and puffed against the league’s tightest defence, until substitute Franck Ribery scored the only goal of the game with seven minutes remaining. It was to prove a telling goal in his quest for a record-breaking ninth Bundesliga title and the deficit was reduced to six points just a game short of the season’s halfway mark.
Matchday 17
Borussia Dortmund 2-1 Borussia Mönchengladbach
Eintracht Frankfurt 0-3 Bayern Munich
Dortmund responded immediately on the final Friday of 2018 with a win over then second-placed Gladbach thanks to goals from Sancho and Reus. Bayern, and Ribery, too had a response when they went to Kovac’s former club Frankfurt. The veteran winger scored a brace as the champions moved back into second and just six points off the leaders as the Bundesliga went into its winter break.
Matchday 18
Hoffenheim 1-3 Bayern Munich
RB Leipzig 0-1 Borussia Dortmund
The start to the second half of the season was very similar to that of the first as Bayern beat Hoffenheim 3-1 again on a Friday night. Borussia, though, were made to battle in Leipzig and Axel Witsel’s goal was the difference to keep BVB six clear as the Rückrunde got going.
Matchday 19
Borussia Dortmund 5-1 Hannover
Bayern Munich 4-1 VfB Stuttgart
Again, it was as you were following the 19th round of fixtures as both of the top two recorded comfortable victories at home to two of the league’s struggling sides.
Matchday 20
Bayer Leverkusen 3-1 Bayern Munich
Eintracht Frankfurt 1-1 Borussia Dortmund
In stark contrast to the previous week, Matchday 20 was far from run of the mill for the top two. Bayern suffered what would be their only domestic defeat of the second half of the season when Leverkusen came from 1-0 down at half-time. With Gladbach’s win later at Schalke, it would knock the champions down to third and seven points behind Dortmund after they held on for a not too disastrous draw in Frankfurt.
Matchday 21
Borussia Dortmund 3-3 Hoffenheim
Bayern Munich 3-1 Schalke
Looking back now, this was arguably the moment that cost Dortmund a potential title. Leading Hoffenheim 3-0 after 66 minutes at the Signal Iduna Park, Favre’s men looked to be cruising to victory before three goals in 12 minutes from Julian Nagelsmann’s side stunned 81,000 home fans into silence. Hours later and Bayern were back within five points after their win at home to Schalke.
Matchday 22
Augsburg 2-3 Bayern Munich
Nuremberg 0-0 Borussia Dortmund
By the time Matchday 22 was over, Dortmund were looking anxiously over their shoulder. Bayern had twice come from behind on the Friday night at Augsburg to snatch a 3-2 win before leaders Borussia went to bottom side Nuremberg on the Sunday. BVB had 18 attempts on goal at the Max-Morlock-Stadion but could not find a way past Christian Mathenia. In the space of seven games, the gap between the top two had now shrunk to just three points.
Matchday 23
Bayern Munich 1-0 Hertha Berlin
Borussia Dortmund 3-2 Bayer Leverkusen
Once again it was Bayern‘s turn to go first and they found the going tough against the team who had previously inflicted the first loss of the season. But Javi Martinez came up trumps for the Munich side and all of a sudden Bayern were level at the top. Dortmund would respond the following day, though, to their regain their three-point advantage with a nerve-jangling win at home to in-form Leverkusen.
Matchday 24
Augsburg 2-1 Borussia Dortmund
Borussia Mönchengladbach 1-5 Bayern Munich
However, the following week saw that lead wiped out for real. BVB came up short against an Augsburg side that had pushed them so hard earlier in the season and Bayern were handed a golden opportunity by their Bavarian neighbours – one they would not pass up. The following evening the champions went to Mönchengladbach and blitzed their hosts. The top two were now level on points and separated by just two goals.
Watch: Bayern went top for the first time since Matchday 5!
Matchday 25
Bayern Munich 6-0 Wolfsburg
Borussia Dortmund 3-1 VfB Stuttgart
As March rolled around, Bayern hit their stride. They dismantled Wolfsburg 6-0 in Munich to throw down the gauntlet to Dortmund, who needed late goals from Alcacer and Pulisic to beat struggling Stuttgart. Both sides may have won but Borussia’s time at the top was over. Having scored 11 goals in their last two games, the Reds raced past on goal difference and reclaimed the league summit for the first time since Matchday 5.
Matchday 26
Hertha Berlin 2-3 Borussia Dortmund
Bayern Munich 6-0 Mainz
It was the same story again the following week as Dortmund twice came from behind to win in Berlin, but only thanks to Reus’ 92nd-minute strike against nine-man Hertha. Bayern, on the other hand, had little trouble on the Sunday as they thrashed Mainz 6-0, with James scoring his first Bundesliga hat-trick. Both teams remained tied on points but Bayern were ensuring they were in pole position in case it came down to goal difference.
Matchday 27
Borussia Dortmund 2-0 Wolfsburg
Freiburg 1-1 Bayern Munich
Just a week out from the season’s second Klassiker, this Matchday was all about applying early pressure. Bayern came from behind at Freiburg – the only team not to lose to FCB in 2018/19 – but were again held to a 1-1 draw. When the full-time whistle went at the Schwarzwald Stadion, it was also level in Dortmund until Alcacer finally found a way past a resolute Wolfsburg defence (twice) and restore Borussia back to top spot for the third (and final) time in the season.
Watch: Bayern's five-goal thrashing of Dortmund on MD28!
Matchday 28
Bayern Munich 5-0 Borussia Dortmund
If the hype around the season’s first Klassiker had been big, then the second encounter in Munich took that to a whole new level. For many it was an early title decider and Bayern showed they meant business. They led 4-0 by half-time at the Allianz Arena after blowing BVB away. Lewandowski rounded off the rout late in the show with his second of the game to move the reigning champions into outright first for the first time since Matchday 5.
Matchday 29
Borussia Dortmund 2-1 Mainz
Fortuna Düsseldorf 1-4 Bayern Munich
There were no surprises the following weekend as Bayern brushed aside Fortuna, with Kingsley Coman scoring twice. Sancho also grabbed a double, becoming the youngest Dortmund player to reach double figures in a single campaign, although BVB were made to sweat as Mainz threw everything but the kitchen sink in a grandstand finale, with goalkeeper Roman Bürki thrice clawing the ball off the line late on.
Matchday 30
Bayern Munich 1-0 Werder Bremen
Freiburg 0-4 Borussia Dortmund
Bayern maintained their lead at the top with a workmanlike win over Bremen. Niklas Süle broke the deadlock in a tight encounter in the second half as the Bavarians became the first team all season to stop the Green-Whites from scoring. Sancho was again among the scorers for a rampant BVB in the Black Forest.
Watch: Schalke's potentially title-deciding Revierderby win in Dortmund!
Matchday 31
Borussia Dortmund 2-4 Schalke
Nuremberg 1-1 Bayern Munich
If Matchday 30 was routine, Matchday 31 was anything but. Dortmund were expected to blow struggling local rivals Schalke away at the Signal Iduna Park, but – despite taking the lead through Mario Götze - imploded as Marco Reus and Marius Wolf both saw red in the space of five costly second-half minutes. The only saving grace was Bayern’s inability to beat relegation-fighting Nuremberg 24 hours later.
Matchday 32
Bayern Munich 3-1 Hannover
Werder Bremen 2-2 Borussia Dortmund
Bayern made no such mistakes at home to rock-bottom Hannover, coasting to a 3-1 win to restore their one-point lead at the summit. It looked like that’s how it would stay as Dortmund raced into a 2-0 lead in Bremen, only to collapse in the second half. Two Werder goals in another damning five-minute spell left BVB four points adrift of Bayern heading into the final two games of the campaign.
Matchday 33
Borussia Dortmund 3-2 Fortuna Düsseldorf
RB Leipzig 0-0 Bayern Munich
Dortmund kept up their end of the bargain on the penultimate weekend, albeit only after surviving another late onslaught against Fortuna. Bayern could have rendered the result meaningless and very nearly did, but Leon Goreztka’s acrobatic effort in Leipzig was ruled out for an offside decision against Lewandowski, ensuring the destination of the 2018/19 Meisterschale would be decided on the final day.
Watch: Bayern beat Frankfurt to clinch the Bundesliga title on the final day!
Matchday 34
Borussia Mönchengladbach 0-2 Borussia Dortmund
Bayern Munich 5-1 Eintracht Frankfurt
Dortmund needed to win in Gladbach and hope for a big favour from Frankfurt, but there were no final twists in the tale – save for a brief moment of parity that lasted all of three second-half minutes at the Allianz Arena. Bayern ran riot in the end, aided and abetted by farewell goals from Franck Ribery and Arjen Robben, to leave Dortmund to ponder what might have been and the title in Munich.