Macron this week announced sweeping measures to fight a rapid surge in coronavirus infections, which protesters say infringe the freedom of choice of those who do not want the vaccination.
The interior ministry said 137 marches took place across the country, gathering nearly 114,000 people, of which 18,000 were in Paris.
The measures had already prompted smaller demonstrations earlier this week, forcing police to use tear gas to disperse protesters.
"Everyone is sovereign in his own body. In no way does a president of the Republic have the right to decide on my individual health," said one protester in Paris who identified herself as Chrystelle.
Marches also included "yellow vest" protesters seeking to revive the anti-government movement curbed by coronavirus lockdowns.
Visiting a centre in Anglet in southwestern France, Prime Minister Jean Castex said vaccination, which is not mandatory for the general public for now, is the only way to fight the virus. 1/5
"I hear the reluctance that arises but I think that we must at all costs convince all our fellow citizens to be vaccinated, it is the best way to cope to this health crisis," Castex said.
Despite the strength of the protests, an Ipsos-Sopra Steria poll released on Friday found more than 60% of French people agree with mandatory vaccination for health workers, as well as a requirement for a health pass in some public places.
Fast-spreading variants of the virus risk undermining economic recovery if allowed to spiral out of control, forcing some governments to rethink their COVID-19 strategies just as citizens start their summer holidays.
Earlier on Saturday Castex's office said France would reinforce restrictions on unvaccinated travellers from a series of countries to counter a rebound in COVID-19 infections, while opening its doors to those who have received all their shots.
"The Delta variant is here, we must not hide the truth, it is more contagious than the previous ones. We must adapt and face it", Castex told reporters in southwestern France, referring to the variant first identified in India.
After falling from more than 42,000 per day in mid-April to less than 2,000 per day in late June, the average number of new infections in France has rebounded to reach nearly 11,000 per day.
Some 55.5% of the French had had a single dose of a vaccine as of Saturday and 44.8% were fully inoculated. Reporting by Antone Paone, Sybille de La Hamaide and Gwenaelle Barzic, Editing by David Holmes and Louise Heavens