Professeur de technologie, il fait son entrée en politique en 1983 en devenant conseiller municipal de Bazouges-la-Pérouse. Il en devient adjoint en 1989, puis maire à partir de 1995.
Il était le suppléant de Marie-Thérèse Boisseau aux élections législatives de 2002 dans la sixième circonscription d'Ille-et-Vilaine. La députée devient secrétaire d'État aux handicapés le 17 juin 2002, et lui cède son fauteuil. À la fin des activités ministérielles de cette dernière en mars 2004, son ex-suppléant refuse de démissionner. Il a donc occupé ce siège pendant la quasi-totalité de la XIIe législature (2002-2007). Il était inscrit au groupe UMP et était membre de la commission des affaires culturelles. Il a également été président du groupe d'amitié parlementaire avec le Guyana.
Se présentant sans étiquette aux cantonales en mars 2008 dans le canton d'Antrain, il est battu par le candidat divers gauche, Henri Rault.