The games are coming thick and fast in the Bundesliga and football fans were treated to a full midweek schedule from the German top division on Tuesday and Wednesday, exclusively live on BT Sport.

Borussia Dortmund entertained league leaders Bayern Munich in the pick of the fixtures at teatime on Tuesday evening, while RB Leipzig hosted in-form Hertha Berlin on Wednesday.

Get BT Sport today - contract-free

Watch all the sport you love for just £25 per month.

Buy a pass

As well as the titanic clash between the two table toppers, Matchday 28 saw action between some of the Bundesliga's relegation strugglers, including Union Berlin v Mainz and Augsburg v Paderborn.

Read on for match reports and highlights from Matchday 28.

Borussia Dortmund 0-1 Bayern Munich

It was business as usual for Bayern Munich as they took all three points on their travels to the Signal Iduna Park, spelling doom for Dortmund's title hopes.

Joshua Kimmich's classy first-half chip was the difference between the two sides with the German international catching Roman Burki off his line - although the Swiss stopper might be disappointed he was beaten from distance.

The result leaves Bayern in total command of the title race with a seven-point cushion over Dortmund and just eight games to play.

Werder Bremen 0-0 Borussia Monchengladbach

Bremen might feel they missed an opportunity to move closer towards Bundesliga safety as they produced a gutsy performance against visitors Borussia Monchengladbach on Tuesday night.

The majority of chances fell to the home side but Bremen's wasteful finishing denied them a further two points as an out-of-sort Gladbach shared the spoils after 90 minutes.


Werder Bremen players
Werder Bremen face a gruelling relegation dogfight if they are to retain their Bundesliga status

Eintracht Frankfurt 3-3 SC Freiburg

Eintracht Frankfurt produced a dramatic comeback to snatch a draw against visitors Freiburg.

The home side came from two goals down to earn a share of the points at the Commerzbank-Arena after Freiburg looked set to secure a vital win on their search for European football.

Bayer Leverkusen 1-4 Wolfsburg

The form table went out of the window in emphatic fashion on Tuesday night as Wolfsburg caused the shock of the round with a resounding win over Leverkusen.

A brace from defender Marin Pongracic helped the visitors on their way, with Jacob Baumgartlinger scoring a late consolation for the home side.

RB Leipzig 2-2 Hertha Berlin

Leipzig and Hertha Berlin played out an entertaining draw in Saxony on Wednesday evening.

Julian Nagelsmann’s title ambitions suffered another setback after his side conceded a late penalty to draw 2-2 after coming from behind to lead Bruno Labbadia’s men.

On-loan Liverpool midfielder Marko Grujić cushioned a volley from a corner into Leipzig’s net to put in-form Hertha ahead after 9 minutes before goals from Lukas Klostermann and Patrik Schick turned the game on its head.

However, substitute Ademola Lookman cynically brought down Matheus Cunha inside the box with less than 10 minutes to play and former AC Milan forward Krzysztof Piatek made no mistake from the spot.

Fortuna Dusseldorf 2-1 Schalke

Fortuna Dusseldorf piled yet more misery on David Wagner and Schalke after coming from behind to win 2-1 at Murker-Spiel Arena.

Weston McKennie headed the visitors ahead early in the second half but Fortuna scored a quick-fire double courtesy of Rouwen Hennings and Kenan Karaman to earn a huge three points for Uwe Rösler’s side.

Schalke are now winless in 10 games, scoring just three goals. Fortuna occupy the relegation play-off place in 16th.

Union Berlin 1-1 Mainz

Union Berlin and Mainz shared the spoils in an engrossing encounter at Stadion An der Alten Försterei.

Urs Fischer’s side, who were humbled in the Berlin derby against Hertha on Friday night, earned a precious point despite being reduced to ten men in the first half when Robert Andrich was sent off.

22-year-old Bote Baku gave the visitors the lead but Marcus Ingvartsen equalised for Union soon after.

Hoffenheim 3-1 Cologne

Hoffenheim and Cologne played out a thrilling match under the lights at the Rhein-Neckar-Arena.

Alfred Schreuder’s Europa League hopefuls, who were one goal to the good at half time, scored a quick-fire double straight after the break through Christoph Baumgartner and Steven Zuber.

However, Benjamin Hubner was sent off for the hosts soon after and Florian Kainz pulled one back for Cologne on the hour mark. The 10-man visitors had real hopes of pulling off a remarkable comeback when they were awarded a penalty but Mark Uth failed to convert and Markus Gisdol’s men couldn’t make any further inroads. 

Augsburg 0-0 Paderborn

Bottom club Paderborn held Augsburg to goalless draw at Augsburg Arena, but their time in the German top flight is surely running out after they failed to register a win for the ninth game in a row.

In Bundesliga history, no side with a maximum of 18 points to their name after 27 matches (as Paderborn had before the Augsburg match) has ever managed to avoid relegation and Steffen Baumgart’s side look destined for another season in the second tier.

Augsburg, who impressed against Schalke at the weekend, couldn’t make their dominance count despite creating several good openings.

Klaus Gjasula of Paderborn is challenged by Eduard Loewen of Augsburg