A teatro interpreta Delitto per delitto di Alessandro Benvenuti (2002-2003-2004) al fianco di Alessandro Gassman.
Esordisce al cinema nel film L’ultimo capodanno di Marco Risi (1997). Seguono: I fetentoni di Alessandro Di Robilant (1998); C’era un cinese in coma di Carlo Verdone (1999); Le tre mogli di Marco Risi (2001). È inoltre tra gli interpreti di Baaria di Giuseppe Tornatore.
In televisione: Ultimo di Stefano Reali (1998); Brancaccio di Gianfranco Albano (2001); Salvo d’Acquisto di Alberto Sironi (2003); L’uomo sbagliato di Stefano Reali (2005); Grande Torino di Claudio Binivento (2005); Joe Petrosino di Alfredo Peyretti (2006); Giuseppe Moscati (2007) di Giacomo Campiotti (Vincitore del Maximo Award come Miglior Miniserie al Roma Fiction Fest 2007 e del il premio Flaiano edizione 2008); La vita rubata di Graziano Diana (2007); Il bambino della domenica (2008), di cui è anche autore, per la regia di Maurizio Zaccaro.