President Macron's reform programme faces a make-or-break moment, as French unions stage a day of mass strikes and protests against his plans to push back the age of retirement.
A new bill due to go through parliament will raise the official age at which people can stop work from 62 to 64.
Public transport has been badly hit and many schools are closed.
Turnout was significant at some of the 200-plus protests across France. The biggest was taking place in Paris.
Tens of thousands of protesters marched across the city from Place de la République during the afternoon.
There were smaller demonstrations earlier, in cities including Nantes, Lyon, Bordeaux, Marseille and Toulouse, as train drivers, public sector workers and refinery staff walked out.
On some rail lines, as few as one in 10 services were operating, while the Paris metro was running a skeleton service. The main secondary education union said 65% of teachers were on strike, although the education ministry said it was 35%.
Philippe Martinez, head of the CGT union, predicted more than a million people would take to the streets. Police were out in force in Paris in case of violence from ultra-left "black bloc" infiltrators.
Under the proposals outlined earlier this month by Prime Minister Élisabeth Borne, from 2027 people will have to work 43 years to qualify for a full pension, as opposed to 42 years now.
Hailed by the government as a vital measure to safeguard France's share-out pension system, the reform is proving deeply unpopular among the public, with 68% saying they are opposed, according to an IFOP poll this week.
All the country's unions - including so-called "reformist" unions that the government had hoped to win to its side - have condemned the measure, as have the left-wing and far-right oppositions in the National Assembly.
President Emmanuel Macron was on a visit to Spain on Thursday, but Labour Minister Olivier Dussopt warned that some opponents were using the issue to spread "fake news" and play on people's fears.
Because his Renaissance party does not have a majority in the Assembly, President Macron will be forced to rely on support from the 60 or so MPs of the conservative Republicans party. Although in principle in favour of pension reform, even some of them have warned they could vote against.
With the parliamentary process expected to take several weeks, Mr Macron faces a rolling campaign of opposition, with further days of action likely in the days ahead.
The worst outcome for the government would be rolling strikes in transport, hospitals and fuel depots - effectively bringing the country to a standstill.
Political analysts agreed the mood of the country was hard to gauge, so it was impossible to predict whether the scale of the movement would be enough to force the president into a retreat. If that happened, it could mark the end of any serious reforms in this, his second term.
On the one hand, inflation, the energy crisis and constant reports of run-down public services have left many people feeling anxious and irascible. President Macron's poor image outside the prosperous cities contributed to the "yellow-vest" insurrection four years ago and could well do so again.
But on the other hand, pollsters have also identified a sense of resignation among many people, who no longer identify with "old-school" social movements such as those the unions specialise in. Many will also be too concerned about the loss of a day's income to go on strike.
The prime minister invoked the principle of "inter-generational solidarity" to justify the decision to make people work longer. Under the French system, very few people have personal pension plans linked to capital investments.
Instead, the pensions of those who are retired are paid from the same common fund into which those in work are contributing every month. Workers know they will benefit from the same treatment when they retire.
However, the government says the system is heading for disaster because the ratio between those working and those in retirement is diminishing rapidly.
From four workers per retiree 50 years ago, the ratio has fallen to around 1.7 per retiree today, and will sink further in the years ahead.
Nearly all other European countries have taken steps to raise the official retirement age, with Italy and Germany, for example, on 67 and Spain on 65. In the UK it is currently 66.
President Macron made an earlier, and more ambitious, attempt to reform the system at the end of 2019, but pulled the plug when Covid hit. This second plan was part of his re-election manifesto last year - a key argument deployed by the government in the battle for public opinion.
To palliate the effects of the reform, Élisabeth Borne has promised easier ways to retire early for people in dangerous or physically demanding jobs; steps to encourage older people back into the workforce; and a higher guaranteed minimum pension.
The opposition argues the system is not technically in deficit at the moment, so there is no urgency to act. It says there are cost-saving alternatives to making people work longer, such as cutting pensions for the better-off.
It also says the brunt of the reform will be borne by the poorest. These are people who tend to start work earlier in life, so have normally earned the right to a full pension by the age of 62. Now they will have to work two extra years for no added benefit.
This is the seventh French pension reform since President François Mitterrand cut the retirement age to 60 in 1982.
Every subsequent attempt to reverse that change has led to mass opposition on the street - though in most cases, the reform did in the end go through. For example, in 2010, Nicolas Sarkozy raised the retirement age to 62, despite weeks of protests.