Formé au Conservatoire National Supérieur d’Art Dramatique, il étudie avec Daniel Mesguich, Claude Buchvald, Muriel Mayette... Il travaille ensuite sous la direction de Benoit Lavigne dans Le Concile d’amour d’Oscar Panizza, La Journée des dupes de Philippe Haïm, Beaucoup de bruit pour rien, Roméo et Juliette, Adultères de Woody Allen, Baby doll de Tennessee Williams ; Daniel Mesguich dans Électre de Sophocle, Médée d’Euripide, Le Prince de Hombourg de Heinrich von Kleist, Du cristal à la fumée de Jacques Attali ; Jacques Weber dans Cyrano de Bergerac d’Edmond Rostand, Ondine de Jean Giraudoux ; Philippe Calvario, Roberto Zucco de Bernard-Marie Koltès ; Gilbert Desveaux, Les Grecs de Jean-Marie Besset ; Claude Bacqué, Septembre blanc de Neil LaBute... Il lit des extraits de A la recherche du temps perdu de Marcel Proust aux côtés de Bernadette Lafont et Robin Renucci.Il met en scène notamment Les Nuits blanches de Dostoïevski.Il obtient le Molière de la Révélation masculine pour Roberto Zucco en 2004 et le Raimu 2007 pour Adultère. Au cinéma, il joue dans Deux jours à tuer de Jean Becker, Nos 18 ans de Frédéric Berthe, Musée haut, musée bas de Jean-Michel Ribes, Shakuntala (moyen-métrage en anglais) d’Amir Mansour.