Montpellier came from behind to beat Auxerre and lift the Ligue 1 title, while Caen and Dijon were relegated.
Already relegated Auxerre stunned leaders Montpellier on Sunday when Olivier Kapo notched a 20th minute opener.
But the visitors were crowned champions for the first time after goals from John Utaka in either half.
But the game was not without controversy as Auxerre fans threw tennis balls, toilet paper and tomatoes on to the pitch to force the players back inside the tunnel in the middle of the game.
Referee Said Ennjimi delayed the re-start by five minutes after halftime, and suspended the game again five minutes into the second half.
Police were then called into the Abbe Deschamps stadium and evacuated a section of the crowd as fans threw flares on to the field and the match was stopped for a third time on 70 minutes with the score still at 1-1.
When play resumed, Utaka notched again on 76 minutes to make sure of the title for the visitors, who had only needed a draw going into the game.
Second-placed Paris St Germain came from behind to beat Lorient 2-1 in a game which was also interrupted.
PSG fans threw flares on to the pitch when Lorient were leading 1-0 thanks to Kevin Monnet-Paquet's opener.
After play had been suspended for five minutes, the visitors won thanks to second-half efforts from Javier Pastore and Thiago Motta but it was not enough.
Seemingly Manchester-bound Eden Hazard notched a hat-trick as his farewell game for third-placed Lille ended in a 4-1 thrashing of Nancy.
Esmael Goncalves scored the winner as Nice edged a seven-goal thriller at fourth-placed Lyon.
Down at the bottom, Johan Cavalli netted a brace as AC Ajaccio climbed out of the relegation zone with a 2-0 win at Toulouse .
Their place in the drop zone was taken by Caen, who slumped to a 3-1 reverse at Valenciennes to suffer relegation.
Second-from-bottom Dijon had to win at Rennes to have any chance of avoiding the drop.
But they were thrashed 5-0, with Jires Kembo Ekoko scoring a brace, while their miserable night was compounded by the dismissals of Younousse Sankhare and substitute Chaher Zarour.
In other Ligue 1 games, Cheick Diabate bagged a brace as Bordeaux beat St Etienne 3-2 to finish fifth.
Issam Jemaa netted the only goal as Brest won at Evian, while Ryad Boudebouz scored the winner for Sochaux against ten-men Marseille, who had Stephane Mbia sent-off late on.