Magistrato. Conseguita la laurea in Giurisprudenza (1969), nel 1974 è entrato in magistratura. Già giudice nella VII sezione penale della Corte di Milano (1975-78), tra il 1978 e il 1989 è stato giudice istruttore: questi sono gli anni in cui ha fatto luce sull’omicidio di G. Ambrosoli e avviato le indagini sulla loggia P2. Figura chiave nella lotta al crimine organizzato, è stato consulente per le Commissioni parlamentari d’inchiesta su terrorismo e mafia (1989-93) e in qualità di pubblico ministero è stato protagonista dell’inchiesta “Mani Pulite”. E’ stato, infatti, PM presso la procura di Milano dal 1989 al 2005 (conducendo, tra gli altri, i processi Imi-Sir, Lodo Mondadori e Sme), anno in cui è diventato giudice in Corte di Cassazione. Nel 2007 ha lasciato la professione e da allora si è prodigato nella diffusione dei concetti di legalità e giustizia (soprattutto nelle scuole) e ha assunto la presidenza della casa editrice Garzanti Libri (2009). Dal 2012 al 2015 è stato membro del consiglio di amministrazione della RAI. Tra le sue pubblicazioni: Lettera a un figlio su Mani Pulite (2015), La tua giustizia non è la mia. Dialogo tra due magistrati in perenne disaccordo (con P. Davigo, 2016), Il legno storto della giustizia (con G. Zagrebelsky, 2017), Anche per giocare servono le regole (2020), La sola colpa di essere nati (con L. Segre, 2021) e Anticostituzione. Come abbiamo riscritto (in peggio) i principi della nostra società (2023).