Bundesliga roundup: Matchday 31
Schalke dealt Borussia Dortmund's title hopes a severe blow with victory in a dramatic Revierderby. Elsewhere, RB Leipzig sealed their return to the Champions League while Stuttgart and Hannover nicked big wins.
Nuremberg 1-1 Bayern Munich
Kingsley Coman missed a glorious last gasp chance to move Bayern five points clear of Dortmund in the title race. But the Frenchman wasn't alone, with Nuremberg's Tim Leibold missing an injury time penalty just moments before in a breathless game. The hosts took the lead just after the break through Matheus Pereira before substitute Serge Gnabry's fortunate strike earnt Bayern a point.
Borussia Dortmund 2-4 Schalke
Schalke's 4-2 victory at Signal Iduna Park may just have destroyed Dortmund's title hopes. After Mario Götze gave Dortmund an early lead, Schalke gained the upper hand in an increasingly testy match. A controversial penalty and a rare Salif Sane goal turned the game on its head. When Dortmund lost Marco Reus and Michael Wolf to straight red cards with 30 minutes to play, the contest was over.
RB Leipzig 2-1 SC Freiburg
RB Leipzig secured a spot in the Champions League with a narrow win over Freiburg. Timo Werner opened the scoring in the 19th minute, but the match remained even, with Freiburg creating chances of their own. The visitors equalized with a quickly-taken free-kick, but Emil Forsberg converted a penalty to seal the deal for RB.
Hannover 1-0 Mainz
Hannover kept their slim hopes of survival alive with a unspectacular 1-0 win over Mainz. Robin Quaison's early strike for the visitors was ruled out for a foul before a calamitous goalkeeping error by Mainz keeper Florian Müller allowed Hendrik Weyandt to tap in from close range. It stayed 1-0 but Hannover’s hopes of Bundesliga survival remain in the balance.
Stuttgart 1 - 0 Borussia Mönchengladbach
Anastasios Donis' second half strike in Saturday's late game gave Stuttgart crucial breathing space over the automatic relegation spots and kept Schalke looking over their shoulders despite their derby win. Their opponents failed to make any real impact in a scrappy game and their dreadful second half of the season leaves them in danger of missing out on European football again.
Eintracht Frankfurt 0-0 Hertha Berlin
Frankfurt were looking to solidify their Champions League credentials, but it was Hertha who were the more adventurous team in this clash. The Berliners had two huge chances before half time to snatch the lead, yet Frankfurt keeper Kevin Trapp stood tall to keep the score level. Frankfurt, with one eye on their their Europa League semi-final against Chelsea, had to settle for the draw.
Fortuna Düsseldorf 4-1 Werder Bremen
Düsseldorf added more misery to Werder Bremen's week with a convincing home win. After an early goal, Kenan Karaman doubled Düsseldorf’s lead with a superb solo goal. Max Kruse’s pulled Werder back into the game from the spot but Düsseldorf never lost belief and scored two more. After a disappointing DFB Pokal exit against Bayern Munich, the result only compounded a bad week for Bremen.
Augsburg 1-4 Bayer Leverkusen
The hosts opened the scoring on Friday from a corner, notching their 19th of the season from a set piece. But Leverkusen soon took control of the game. Without VAR interventions, the Werkself might have scored six. There's no doubt which goal was the pick of the bunch: an outrageous first-time lob from close range by teen sensation Kai Havertz.
Hoffenheim 1-4 Wolfsburg
VfL Wolfsburg kept their European hopes alive with an impressive 4-1 win away in Sinsheim. Adam Szalai gave the hosts the lead after just nine minutes but the Wolves hit back through William before half-time. After the break, two near-post errors from Hoffenheim goalkeeper Oliver Baumann allowed Wout Weghorst and Max Arnold to put Wolfsburg 3-1 up before Weghorst made it four late on.