Trade unions estimated that more than 1.2 million people packed streets across the country, according to figures published by Le Monde newspaper. They counted 37,000 people in Paris.
Vast crowds reportedly marched through Marseille, Toulouse, Nantes and Rouen.
Paris and Nantes saw clashes between police and protesters. In the capital, 27 people were arrested, according to the police. Sixteen officers were reportedly hurt.
The nationwide turnout was lower than 615,000 seen last month at the first demonstration against a universal pension scheme. President Emmanuel Macron vowed to press ahead with the reform.