Pharmacien dans le quartier populaire de la Soie-Vauban après avoir commencé sa carrière dans une officine à Saint-Tropez[3], il est élu pour la première fois au conseil municipal de Beauvais à l'occasion d'une élection municipale partielle en 1972.
Il remporte les élections municipales de 1977 à la tête d'une liste d'union de la gauche, succédant à Édouard Grospiron (UDR/RPR, maire depuis 1972) par 52,37 % contre 47,62 %. Il remporte également les élections municipales de 1983, 1989 et 1995.
Son passage à la tête de la ville changera profondément la vieille cité épiscopale, défigurée par la Seconde Guerre mondiale, et un peu endormie depuis. Son action se porte notamment dans le domaine culturel (développement du théâtre, du cinéma, création d'équipements important comme la salle de spectacle Elispace, d'une antenne universitaire, d'un hôpital, etc.) et le soutien à un important réseau d'associations de quartier.
Usé par le pouvoir et affaibli par des défections régulières parmi ses alliés politiques, il est battu par Caroline Cayeux (UMP-UDF) le 18 mars 2001 à l'issue d'une triangulaire gauche (43,45 %) - divers droite (9,18 %) - droite
(47,37 %).
Durant cette même période, il échoue par deux fois aux élections législatives face à Marcel Dassault.
Il a également été conseiller général de l'Oise, conseiller régional de 1977 à 1999, et président du conseil régional de Picardie de 1983 à 1985, remplaçant René Dosière, désavoué par le PS[4]. Il démissionne du conseil régional en 1999[5].
En 2001, alors qu'il est maire de Beauvais depuis 1977, il perd les élections[6],[7]. Pour les municipales de mars 2008, il estime après l'échec des socialistes qu'il n'y a pas eu de « renouvellement de gauche » et, dans un ouvrage paru fin 2008, reproche à la gauche beauvaisienne d'être peu ouverte sur la société civile[8],[3]. Il déclare cependant rester « un militant de gauche, même sans carte » depuis qu'il a été déçu par ses anciens amis[3]. Ce proche de François Mitterrand avait déclaré quelques mois plus tôt ne plus payer sa cotisation au PS depuis 2006
[8].