
Left-wing parties have held onto Paris, Marseille and Lyon, according to provisional results announced on Sunday evening. The far right failed to take the big cities it had hoped, but made significant inroads in smaller ones.
Most of France's almost 35,000 villages and towns elected municipal leaders in a first round last weekend, but the races went to run-offs on Sunday in about 1,500 communes, including bigger urban centres.
In Paris, Emmanuel Grégoire, a former deputy of outgoing Socialist mayor Anne Hidalgo, beat right-wing former minister Rachida Dati.
Provisional results put 48-year-old Grégoire on 51 percent and Dati on 40 percent. Sonia Chikirou of the hard-left France Unbowed (LFI) came third with on around 8 percent.

Former justice and culture minister Dati, a protegee of convicted ex-president Nicolas Sarkozy, had hoped to seize Paris for the right after 25 years of rule by the Socialists, and become its second female mayor in a row.
"Paris has decided to stay true to its history," Gregoire told a cheering crowd, before making the journey to Paris City Hall by bike.

In Marseille, the leftist incumbent, Benoit Payan, was comfortably re-elected with more than 53 percent, beating far-right candidate Franck Allisio of the National Rally, after running neck-and-neck in the first round.
Taking Marseille, France's third biggest city, would have given a huge boost to the RN, which controls only one town – Perpignan – of more than 100,000 inhabitants.
Marseille tight, Paris uncertain after first round of French local elections
'Reasons to hope'
In the northern port city of Le Havre, Edouard Philippe was comfortably re-elected with 47.7 percent of the vote, provisional results showed.
The centre-right former prime minister, who has declared he will run for president in 2027, is seen as one of the strongest opponents to the RN's potential presidential pick – whether veteran leader Marine Le Pen or her 30-year-old lieutenant Jordan Bardella.
"There are reasons to hope," Philippe told his supporters.

However another former prime minister – centrist François Bayrou – lost his seat in Pau, where he's been mayor since 2014. The seat was won by Socialist Jérôme Marbot, running on a united left ticket.
President Macron's centrist Renaissance party had few illusions of making big gains in the local elections by party leader Gabriel Attal welcomed Renaissance victories in Bordeaux and Annecy, taken from the Greens .
He also highlighted what he called an “anti-extremist” lesson. “The French reject this drift toward the extremes and want to start hoping again,” he said.
Macron warns extremes pose danger to France ahead of final mayoral vote
Limited far-right gains
MP Eric Ciotti, who ran on a combined right-wing/far-right ticket, won the city of Nice on the Côte d'Azur, beating outgoing conservative mayor Christian Estrosi on 45 percent versus 39.5 percent respectively.
Ciotti deemed it a victory for his strategy of uniting the right and far right.
The RN party had been hoping for wins in southern urban hubs, notably Marseille, Toulon and Nimes, but exit polls suggest otherwise. Nimes elected Communist candidate Vincent Bouget.

However, the RN won the smaller southern towns of Menton, Carcassonne, Orange and Castres. It also took control of Vierzon, La Flèche and Liévin – bastions of the left.
In winning Wittelsheim, it made its first inroads in the region of Alsace on the border with Germany.
“Never before have the RN and its allies had so many elected officials across France,” said RN president Jordan Bardella, claiming the party had won 70 communes.
No green wave
In Lyon, France's second largest city, incumbent mayor Grégory Doucet of the Greens beat right-wing candidate and former president of Olympique Lyonnais Jean-Michel Aulus by a margin of less than 3,000 votes.
Aulus initially refused to concede defeat and announced he would file an appeal citing "irregularities during the election". He later said he would accept defeat if the final results were confirmed.
While the last municipal elections in 2020 saw a "green wave" – with ecologists taking big cities like Lyon, Bordeaux, Strasbourg, Grenoble, Poitiers, Besançon and Annecy – the party managed to hold onto only Grenoble and Lyon.
Green wave as environmentalists win key cities in French local elections
Difficult alliances
One of the key takeaways from this second round of municipal elections is that alliances between the Socialists (PS), Greens and hard-left France Unbowed (LFI) – designed to keep out the far right – did not pay off.
PS-LFI alliances lost out in Toulouse, Limoges, Poitiers and Besançon.
While in Paris and Marseille, the Socialists, with Greens support, won without forming an alliance with LFI.
Macron hardens attack on 'far-left' LFI, says antisemitic rhetoric must be tackled
The hard-left party led by firebrand Jean-Luc Mélenchon won the towns of Roubaix and Creil in the north of France, and Vénissieux in the Rhone valley. It had already won Saint-Denis, north of Paris, in the first round.
Overall turnout stood at 57 percent – the country's lowest in local polls bar the 2020 edition that took place during the Covid pandemic.