The protesters braved hot weather on Saturday and gathered in the capital’s West End district before walking to Westminster, the country’s political heart, ahead of NHS’s 70th anniversary next week.
They demanded more money for the health service and an end to cuts and privatization.
The protesters were bearing placards reading “Cuts leave scars”, “For people not profit,” and “Democracy or corporate power.”
The demonstrators stopped outside Downing Street and demanded Prime Minister Theresa May’s resignation.
Opposition Labour Party leader Jeremy Corbyn also joined the protest march.
“In the name of equality, in the name of justice, pay the social care needs that are necessary so people can live with dignity,” Corbyn told the rally.
He called on the participants to have the “absolute determination that we will go to the end of the earth and beyond to defend our National Health Service.”
“There have been huge attacks on our NHS over many years,” Corbyn said. “The Tories voted against the original legislation and have always sought to privatize it and continue an internal market.”
“Paying money out to private health contractors, the profits of which could and sometimes do, end up in tax havens around the world,” he stated.
“Think it through, you and I pay our taxes because we want a health service for everybody, I don’t pay my taxes for someone to rip off the public and squirrel the profits away.”
The Conservative government has faced criticism that it has failed to properly fund the NHS since 2010, and that the health service has declined over these years.
Prime Minister May has promised to invest about £20 billion ($26bn, €23bn) a year into the service until 2023-2024 as part of a “Brexit dividend,” but a government spending watchdog has challenged the basis of the ambiguous pledge.