Nel corso della sua carriera, ha ottenuto, tra gli altri premi, quattro David di Donatello per il miglior attore protagonista per "Mio fratello è figlio unico", "La nostra vita", "Il giovane favoloso" e "Volevo nascondermi". Per "La nostra vita" ha vinto anche il Nastro d'argento al migliore attore protagonista ed il Prix d'interprétation masculine al Festival di Cannes 2010. Ha ricevuto l'Orso d'argento per il miglior attore al Festival di Berlino 2020 e il David di Donatello 2021 come miglior attore protagonista per l'interpretazione del pittore Antonio Ligabue nel film "Volevo nascondermi".