Ajaccio and Auxerre suffered upset defeats and Lille and Bordeaux were severely tested on a difficult night for Ligue 1's teams in the last 16 of the Coupe de France.
Maxime Bourgeois' brace for Ligue 2 Chateauroux eliminated Auxerre, Dariusz Dudka with AJA's goal in a 2-1 defeat.
Ajaccio, meanwhile, suffered a 3-2 defeat to Bourg Peronnas after extra time.
Richard Socrier put Ajaccio ahead, but they were pegged back by Soulimane Benchaib's brace. Mehdi Mostefa equalised in the sixth minute of injury time but it was to no avail as Julio Tavares grabbed an extra-time winner.
Reigning league and cup champions Lille needed Gianni Bruno's extra-time header to see them past fourth-tier Compiegne and into the quarter-finals while Bordeaux were pushed even further, edging past US Creteil only after a penalty shoot-out.
Mickael Ciani headed Bordeaux in front on the hour but Marcel Essombe levelled in the 77th minute. Henri Saivet restored Les Girondins' lead early in extra time but Essombe again pegged them back.
Francis Gillot's side progressed to the last eight, though, after Cedric Carrasso saved penalties from Otman Djellilahine and Helder Esteves.
Rennes also need spot-kicks to get past Ligue 1 rivals Nice after a goalless draw, Benoit Costil saving Nice's final penalty from Anthony Mounier.
New signing Gael Kakuta, on loan from Chelsea, helped Dijon to a 2-1 win over Istres. Kakuta cancelled out Nassim Akrour's opener before Koro Issa Kone scored Dijon's winner.
Evian beat AS Valence 2-0, Yannick Sagbo opening the scoring early on before Ali M'Madi grabbed a stoppage-time clincher.
US Quevilly beat Angers 1-0 in the day's other game.