Esordisce in maglia azzurra nel 1994 con l'Under 18.

Grazie alle ottime prestazioni nel ChievoVerona viene convocato nella Nazionale maggiore da Giovanni Trapattoni, il 20 novembre 2002 nell'amichevole Italia-Turchia (1-1), giocata a Pescara. Alla sua terza presenza, il 30 aprile 2003, realizza un gol contro la Svizzera.

Dopo quattro anni d'assenza, viene richiamato in nazionale da Marcello Lippi, contro l'Austra (2-2) a Nizza e disputa la Confederations cup 2009 in Sudafrica, dove gioca nella gara vinta contro gli Stati Uniti (3-1)