Borussia Dortmund took another giant stride towards their first Bundesliga title in nine years with a 3-1 victory over Bayern Munich at the Allianz Arena which all but ended the hosts' hopes of defending their crown.
Dortmund's first win in Munich since 1991 gave them a 13-point lead over second-placed Bayern Leverkusen, who play tomorrow, and moved them 16 clear of Bayern.
Lucas Barrios put Jurgen Klopp's side ahead in the ninth minute before Luis Gustavo brought Bayern level in the 16th minute. Nuri Sahin put Dortmund back in front within two minutes and Mats Hummels sealed the three points after an hour to leave Bayern languishing in fourth.
Hannover and Mainz kept up their challenge for Champions League qualification following late wins away from home in the Bundesliga.
Christian Schulz's 89th minute goal gave Hannover a hard-earned 1-0 win at St Pauli and their club record 14th victory of the Bundesliga season.
Schulz scored the only goal of the game for Mirko Slomka's team. Hannover have collected three wins and a draw in their last four games to move to 44 points, in third place ahead of Bayern.
Mainz secured a 2-1 victory away to Hoffenheim, thanks to Elkin Soto's 86th minute winner, that keeps them in fifth place.
Eugen Polanski hit the post for Mainz on 21 minutes and the visitors were ahead two minutes later through Andreas Ivanschitz. Hoffenheim appeared set to claim a point when David Alaba equalised on 83 minutes, but Soto struck decisively just three minutes later.
Schalke's fans were unable to hide their frustration after another abject performance from their side ended in a 1-1 draw at home to Nurnberg. Jens Hegeler put the visitors in front against the run of play in the 37th minute and both sides left the field to a chorus of disapproval from the home fans.
Raul earned Schalke a point with his goal in the 52nd minute, but Schalke's wastefulness prevented them from finding a winner and the fans made their feelings known towards coach Felix Magath at the final whistle.
Lukas Podolski's late goal secured Cologne an entertaining 1-0 victory over Freiburg for their fifth home win in a row. Podolski scored in the 88th minute for his sixth goal of the second half of the season.
Cologne are undefeated in their last four games and have just one loss in the last seven for 29 points and 11th place - five points from the relegation zone.
Kaiserslautern held on for a 1-1 draw at home to Hamburg to move out of the Bundesliga relegation zone. Adam Hlousek gave the hosts the lead in the 18th minute but Marcell Jansen equalised nine minutes after the break.
Kaiserslautern had collected just two points since the winter break going into the game, but this draw lifted them up to 15th place. Hamburg, who had won five of their previous seven games, moved up to sixth.