Gladbach 1-2 Cologne

(Stindl 32' – Modeste 59', Risse 90')

Marcel Risse scored a remarkable injury time winner as Cologne came from behind to sink Borussia Mönchengladbach.

Gladbach took the lead in the first half through Lars Stindl, who lashed in from close range.

But Cologne came out fighting after the break and levelled through red-hot striker Anthony Modeste, who headed in his 12th goal of the season via a lucky ricochet off Jannik Verstergaard.

But things got even better for Cologne in added time, when Risse rifled in a brilliant free-kick that bamboozled Gladbach keeper Yann Sommer and flew into the top corner.

Darmstadt 0-1 Ingolstadt

(Hartmann 68')

Maik Walpurgisan was a controversial choice as Ingolstadt coach.

Mortitz Hartmann scored a stunning second half volley to givenew Ingolstadt coach Maik Walpurgis an invaluable victory in his first game in charge.

Having failed to win all season, Ingolstadt needed to beat fellow strugglers Darmstadt to avoid being cut adrift along with Hamburg at the foot of the Bundesliga.

But the all important goal was worth the wait when it came midway through the second half, with Hartmann catching his volley brilliantly and the ball flying over the helpless Michael Esser in the Darmstadt goal.

The win moves Ingolstadt to within two points of 16th placed Werder Bremen and goes some way to appeasing those critical of Walpurgis' appointment.

Mainz 4-2 Freiburg

(Bungert 15' Malli pen 20', Bell 82‘, Onisiwo 82' – Grifo 67', Petersen 85')

Malli's penalty was his 29th Bundesliga goal for Mainz, the joint highest in the club's history.

Mainz put on a fine attacking display as they disposed of Freiburg in a six-goal thriller.

Niko Bungert's early striker and a penalty by Yunus Malli, which had to be re-taken after encroachment into the box, gave Mainz a healthy lead at the break.

Freiburg pulled one back after Vincenzo Grifo's neat finish, only for Mainz to go 3-1 up through Stefan Bell.

The visitors made the final stages interesting with their second of the game, coming through Nils Petersen, but Mainz made the three points safe with a fourth in the final minute from Karim Onisiwo, who rounded the keeper and rolled the ball into the empty net.

Wolfsburg 0-1 Schalke

(Goretzka 82')

Schalke were made to work for their win, which takes them 10 unbeaten in all competitons.

Leon Goretzka's scuffed volley was enough to earn Schalke a scrappy win and pile further misery on Wolfsburg.

Schalke were the better team throughout and felt they should have been awarded a penalty when captain Benedikt Höwedes appeared to be dragged down in the box.

But Schalke's moment came eight minutes from time, when Goretzka turned the ball in to ensure the Ruhr club go ten games unbeaten in all competitions.

Augsburg 0-0 Hertha

Hertha were looking to keep the pressure on Leipzig and Bayern with all three points.

Augsburg held firm to frustrate Hertha Berlin in an uneventful stalemate.

The result keeps Hertha fourth, but they can be overtaken on Sunday by Hoffenheim or Eintracht Frankfurt. Augsburg are 12th.