Several thousand people, many wearing white lab coats, marched to Madrid's central Plaza de Cibeles from 27 hospitals in the region, waving signs that read "Your health is being sold" and "Cutting back on health care is a crime".
They chanted, blew whistles and beat drums as they made their way through the streets of the Spanish capital, blocking traffic.
"There is no study that shows that privatizing the management of hospitals leads to lower costs.
This privatization hurts patients' health care to benefit other interests," said Emilia Becares, a 46-year-old nurse who went to the protest with her three sons, aged seven, eight and nine.
The Madrid regional government plans to outsource the management of six of 20 large public hospitals and 27 health centres of the 270 in the region.
Spanish health care workers and many patients, who are fiercely protective of the public health system, say private providers will put profits before quality and fire thousands of support staff in favour of cheaper replacements.
"Many medications are no longer provided for free. I am here to defend the public health care system which we have built up over the years," said Carlos Moreno, a 52-year-old doctor who came to the protest decked out in his lab coat.
Smaller protests were held in other Spanish cities including Albacete, Cuenca and Segovia.
Nationally, Prime Minister Mariano Rajoy's government has slashed health spending by €7 billion ($9.1 billion) a year as part of a campaign to squeeze €150 billion out of the crisis-racked country's budget by 2014.