Debutta cinematograficamente negli anni Ottanta quando Alfonso Brescia lo sceglie per il film GIURAMENTO (1982), accanto a Mario Merola, Nino D'Angelo, Ida Di Benedetto, Regina Bianchi e Enzo Cannavale. Visto il successo si replica con GUAPPARIA (1984) per la regia di Stelvio Massi. Promosso in serie A, eccolo accanto a Jack Lemmon e Marcello Mastroianni in MACCHERONI (1985), pellicola di Ettore Scola, e l'anno successivo in SEPARATI IN CASA di Riccardo Pazzaglia. Giancarlo Giannini, che debutta nel 1987, alla regia, lo vuole per il suo TERNOSECCO, così come Lello Arena per il suo CHIARI DI LUNA (1988). Per tutto il decennio dei Novanta si divide fra piccole pellicole italiane poco conosciute e teatro, poi Nino D'Angelo lo sceglie per AITANIC (2000), e Matteo Garrone gli propone il suo primo ruolo da protagonista: quello del tassidermista omosessuale e colluso con la mafia ne L'IMBALSAMATORE. La pellicola, ispirata a un fatto di cronaca che si tinge di noir e di ambiguità, gli permette di vincere il David di Donatello come miglior attore non protagonista. Riconosciuto a livello nazionale passa da L'AVVOCATO GREGORIO (2003) di Pasquale Squitieri al telefilm esilarante Camera Café (2003-2005), nella parte di Sergio. Affianca poi Maria Grazia Cucinotta nel sentimentale VANIGLIA E CIOCCOLATO (2004) e in uno dei segmenti dell'opera collettiva ALL THE INVISIBLE CHILDREN (2005). Nello stesso anno affianca Luca Bizzarri e Paolo Kessisoglu, nella spassosa commedia ...E SE DOMANI (2005) e Claudia Gerini nella black comedy NERO BIFAMILIARE (2006) dell'esordiente Federico Zampaglione. Nei panni del Dottor Zampino nella pellicola NUOVOMONDO (2006) di Emanuele Crialese, passa a un'altra coppia di comici, Ale e Franz in MI FIDO DI TE (2006) di Massimo Venier, ritrovando Giancarlo Giannini sul set del film prodotto dalla Disney SALVATORE - QUESTA È LA VITA (2006) di Gian Paolo Cugno, mentre nel 2007 Fabrizio Bentivoglio lo sceglie per il suo primo film da regista, la commedia LASCIA PERDERE JOHNNY.
Lo troviamo negli ultimi anni in HOTEL MEINA (2007), CHIAMAMI SALOMÈ (2005), FORTAPÀSC (2008), LA VALIGIA SUL LETTO (2010), L'IMBROGLIO NEL LENZUOLO (2010) e UN GIORNO DELLA VITA (2010). L'anno successivo è nel cast del film di Giovanni Albanese SENZA ARTE NÉ PARTE, e dopo la partecipazione in ALL'ULTIMA SPIAGGIA di Gianluca Ansanelli lo troviamo in UNA DOMENICA NOTTE di Giuseppe Marco Albano. Nel 2013 è nel cast del film di Elisa Fuksas NINA e in quello di Eduardo Tartaglia SONO UN PIRATA, SONO UN SIGNORE, e in quello di IL RAGIONIERE DELLA MAFIA di Federico Rizzo.