Los manifestantes, procedentes de varios barrios de la capital española, confluyeron en el ayuntamiento bajo el lema: "Contra la destrucción de la atención primaria, Madrid se levanta por la sanidad pública".
Unas 18.000 personas se manifestaron según el gobierno español, 200.000 según los organizadores.
Los manifestantes llenaron la zona central de la plaza de Cibeles, coreando eslóganes y ondeando banderas.
Muchos portaban pancartas con mensajes como "El derecho a la salud es un derecho humano. Defiende la sanidad".
La propia ministra de Sanidad, Mónica García, participó en la manifestación.
"Nuevamente volvemos a defender nuestra sanidad publica como el corazón de nuestro Estado de bienestar y de nuestra sociedad. Lo que hoy se defiende aquí es la democracia y la salud de los ciudadanos y ciudadanas", declaró a la prensa esta anestesista de profesión.
Un manifestante llevaba una enorme figura con una nariz de Pinocho de Isabel Díaz Ayuso, presidenta de la Comunidad de Madrid y feroz opositora al Gobierno español del presidente socialista Pedro Sánchez.
Al igual que los sindicatos y los partidos de izquierda, los manifestantes denunciaron la falta de inversiones y de personal, que provoca largas listas de espera y obliga a los pacientes a acudir a los saturados servicios de urgencias de los hospitales de la región.
Los detractores de Díaz Ayuso afirman que su administración es la que menos invierte por habitante en atención primaria de todas las regiones españolas, a pesar de que Madrid tiene la renta por habitante más alta.
Muchos creen incluso que los conservadores están desmantelando discretamente el sistema, algo que la Comunidad de Madrid niega.
España tiene un sistema de salud híbrido, pero el sector público es mayor que el privado y se considera un pilar del Estado del bienestar.
En el sistema descentralizado español, los gobiernos regionales, conocidos como comunidades autónomas, gestionan gran parte del presupuesto de salud.