Paris Saint Germain's Ligue 1 title charge suffered a surprise blow as they slumped to a 1-0 defeat away to the 10 men of relegation-battling Reims.
Zlatan Ibrahimovic had a goal controversially disallowed early in the second half, and Reims then had Christopher Glombard sent off for a second bookable offence before the hour mark.
But Reims still ran out winners as Grzegorz Krychowiak scored the only goal in the 64th minute.
The result means Lyon can move level on points with PSG by beating Brest away from home later today.
Nice paid the price for the first-half dismissal of Valentin Eysseric as St Etienne moved into third place with an emphatic 4-0 win.
St Etienne led early on through Pierre-Emerick Aubameyang's penalty but the game turned on the 23rd-minute dismissal of Eysseric, whose ugly challenge on Jeremy Clement spelled the end of the night for both men.
Nice held out with 10 men until the break only for the floodgates to open in the second half, with Yohan Mollo scoring in between Brandao's brace.
Nancy climbed off the bottom of the table after upsetting Sochaux 2-1 to claim only their fourth win of the season.
First-half goals from Benjamin Moukandjo and Florent Zitte put Nancy in charge, and Sochaux halved the deficit through Sloan Privat's acrobatic effort in stoppage time at the end of the game.
Toifilou Maoulida scored the only goal as Bastia beat Ajaccio in a fiery Corsican derby but it was the dismissals of five players, four in the final minute, which will create the headlines.
Maoulida struck early in the second half, with Ajaccio's hopes of a comeback not helped by a second yellow card for Mathieu Chalme 10 minutes from time.
However, what had been an entertaining match was overshadowed by events in the dying moments when Dennis Oliech's dismissal for an ugly challenge on home goalkeeper Mickael Landreau sparked a brawl which resulted in red cards for team-mate Benjamin Andre and Bastia duo Florian Thauvin and Jerome Rothen.
Evian played out an uninspiring goalless draw with Toulouse, while Gael Danic's 79th-minute penalty ensured Valenciennes claimed a 1-1 draw at Lorient.
The hosts had taken a third-minute lead through Kevin Monnet-Paquet's low strike, but Danic slotted home from the spot late on after Lorient defender Arnaud Le Lan had handled in the area.
Robert Lewandowski scored a brace as Borussia Dortmund bounced back from their midweek DFB-Pokal loss to Bayern Munich with a 3-1 Bundesliga victory over Hannover.
The Polish striker, who turned down the offer of a new contract earlier this week, struck twice in the opening 21 minutes to put the home side in charge.
Mohammed Abdellaoue pulled a goal back for Hannover in the 40th minute but Julian Schieber made it 3-1 midway through the second half as Dortmund got back to winning ways.
Second-placed Dortmund remain a point ahead of Bayer Leverkusen, who snatched a late 2-1 win over Stuttgart.
Vedad Ibisevic's penalty had put the Swabians ahead in the 12th minute, but a penalty from Stefan Kiessling brought Leverkusen back on level terms 10 minutes from the end before Lars Bender completed the turnaround.
Basement side Greuther Furth shared a 1-1 draw with Hamburg although the point does little to help their desperate fight against relegation.
Furth took the lead in the 14th minute through Nikola Djurdjic but Maximilian Beister equalised for Hamburg in the 22nd minute.
Augsburg moved within six points of safety following a 1-0 win at Werder Bremen, courtesy of Tobias Werner's 29th-minute strike.
Julian Draxler scored two goals and set up a third as Schalke beat Wolfsburg 4-1.
Draxler's first goal in the 33rd minute was cancelled out by Ivica Olic early in the second half, but Draxler scored again after 63 minutes with Jefferson Farfan and Klaas Jan Huntelaar adding gloss to the scoreline.
Jonathan Schmid's late goal gave Freiburg a 1-1 draw at Nurnberg, who had taken the lead through Timmy Simons' first-half penalty.
Real Madrid had one eye on their Champions League tie with Manchester United but still had enough to take El Clasico honours against Barcelona. Read the full story here.
Deportivo La Coruna brought an end to their six match losing streak, but remain deep in trouble at the bottom of La Liga after being held to a 0-0 draw by Rayo Vallecano.
It might have been even worse for the Galician side after they found themselves on the back foot for much of the first half and then reduced to 10 men in the closing stages when veteran defender Carlos Marchena was sent off.
Athletic Bilbao eased their drop fears with a much-needed victory over local rivals Osasuna at the Reyno de Navarra stadium to move six points clear of the relegation zone.
A volleyed goal by Markel Susaeta midway through the second half was enough to give Marcelo Bielsa's side the three points, but the Navarrans were superior for large periods of the match.
In the day's late game, the derby between Valencia and Levante, an 89th-minute equaliser from Jose Barkero stopped Los Che moving above Malaga into fourth place.
His goal came after Jonas and Roberto Soldado had turned around Vicente Iborra's opener for Levante, who remained in mid-table.
PSV Eindhoven and Ajax both picked up hard-fought victories to ensure the gap separating the Dutch powerhouses at the top of the Eredivisie remains at two points.
Leaders PSV far from had things all their own way as they needed an injury-time strike by Mark van Bommel to made certain of a 2-0 win at home to second-bottom VVV-Venlo.
Memphis Depay had handed the hosts the lead inside three minutes but VVV refused to lie down and the match was in the balance until Van Bommel struck at the death.
Ajax stayed in touch as they won 2-0 at FC Twente, whose own title aspirations are now all but over as they slipped nine points off the pace on the back of their seventh match without a win.
Alfred Schreuder took charge of Twente after Steve McClaren quit earlier this week, but the interim boss could not deliver a first win since December 21 as Ajax claimed the points with goals from Niklas Moisander in the fourth minute and fellow defender Toby Alderweireld after 25.
The victory takes the Amsterdammers three points clear of surprise title aspirants Vitesse Arnhem, who had pulled level with victory over FC Utrecht.
Heerenveen moved seven points clear of the relegation play-off zone with a 2-1 win at NAC Breda.
NAC looked on course for the points thanks to Nemanja Gudelj's 49th-minute strike, but Alfred Finnbogason struck a quickfire double inside the final 10 minutes to lift Heerenveen to the win.
PEC Zwolle also put some daylight between themselves and the bottom three as they moved four points clear of danger with a 2-0 win at home to bottom side Willem II.
Goals from Arsenio Valpoort (57) and Mateusz Klich (60) sealed the win as Willem II remain cast adrift at the foot of the standings, nine points from safety with nine games remaining.
Porto handed the initiative to Benfica in the Liga title race after a goalless draw at Sporting.
The battle for supremacy has been intense between the leading two teams, and although Porto's point from their trip to Lisbon edged them ahead at the top of the table, it left the door open for Benfica to surge ahead.
Benfica tackle Beira-Mar later today, and can pull two points clear. Both Porto and Benfica remain unbeaten in the league this season, after 21 and 20 matches respectively.
Porto had a man advantage for the closing 12 minutes against Sporting, after defender Marcos Rojo was sent off, but could not make it count.
Pacos Ferreira, who are out of the title race barring both Porto and Benfica suffering astonishing collapses, tightened their grip on third place with a 2-0 home win over Vitoria Setubal.
Both goals came from forward Cicero who netted after 39 and 84 minutes.
Vitoria Setubal were down to 10 men from the 53rd minute after Paulo Tavares was sent off.
AC Milan climbed above Lazio into third place in Serie A with a comfortable win over their rivals at the San Siro.
Giampaolo Pazzini was on target twice for the Rossoneri, who played over 70 minutes with an extra man following a red card to Antonio Candreva.
Kevin-Prince Boateng also found the back of the net as Milan moved a point above their opponents and into a qualifying berth for the Champions League next season.
Pazzini, deputising for the injured Mario Balotelli, was on hand to score five minutes before the break after the ball was touched away from El Shaarawy inside the six-yard box.
The chances of Lazio recovering were ultimately ended on the hour mark when Stefan Radu made a hash of his clearance, presenting the ball to Pazzini who lashed it in low from 20 yards.
M'Baye Niang struck the top of the crossbar late on, but no further damage was inflicted as three goals were enough for three points.
Follow us @SprtNationalUAE