Fierce clashes between police and protesters on the streets of Paris left riot officers injured after the fringes of an annual trade union demonstration turned violent.
A water cannon was deployed and tear gas filled the air on the sidelines of the march as masked youths threw Molotov cocktails at security forces.
Protesters called for action to stop Marine Le Pen, of the far-right Front National, winning Sunday's final round of the French presidential election in a run-off against centrist candidate Emmanuel Macron.
"I am against Macron, but the most urgent thing is to stop the Front National from winning. So I will vote for him," a protester called Sophie told Le Monde. "After the second round, we'll fight against Macron."
Thousands of trade union activists marched through the French capital and in other cities to demand that France's next president protect workers' rights.
Video showed riot police surrounding the protesters disrupting the march after isolating most of them from the rest of the crowd near the capital's Place de la Bastille.
However, some continued to lob firebombs that exploded into flames in the street.
Far-left politician Jean-Luc Melenchon joined the march to applause from protesters. Mr Melenchon, of the 'La France Insoumise' party was knocked out of the presidential race after coming fourth in the first round.
He strongly opposes Le Pen gaining power but has also refused to endorse Mr Macron, seen as a pro-business figure who could reduce France's strong labour protections.
The moderate CFDT union, or French Democratic Confederation of Labour, held a small rally against Ms Le Pen in Paris, while protesters at the larger march nearby carried signs that read: "Let's block the National Front".
However, according to Associated Press, no one was seen openly rallying for Mr Macron.
David et marina sont venus manifester avec leurs deux petits enfants.David: personne n'a le droit de me dire que je ne suis pas chez moi" pic.twitter.com/auWnU8nwoU— Sarah Belouezzane (@SBelouezzane) May 1, 2017
Meanwhile, thousands of Le Pen supporters gathered for a rally north of Paris, where the presidential candidate compared Mr Macron to Hillary Clinton and accused him of being a puppet of the world of finance and Islamic fundamentalists.
Cheers of "Marine President!" and anti-immigrant chants were heard as she called Mr Macron "the caviar left".
A couple and their two children marching against Le Pen in central Paris said: "The situation is serious enough that we're out on the streets; it's like people have forgotten it's the Front National," said their father David.
He recalled the 2002 elections, when Ms Le Pen's father Jean Marie Le Pen ran for President against Jacques Chirac and activists came together to block Mr Le Pen from victory.
"No one has the right to tell me I'm not at home here," said David.
Paris police said three officers had been injured in the clashes, according to Le Figaro, while other reports suggested two had been hurt.
"I pay tribute to the two CRS [riot police officers] injured in Paris. It's this chaos and permissiveness I don't want to see any more in our streets," tweeted Ms Le Pen in reaction to the news.