Après des débuts prometteurs en karting, il a commencé sa carrière en Formule 3 en 1987. En 1988, il a remporté le championnat italien de Formule 3, ce qui lui a permis d'accéder à la Formule 3000 l'année suivante.
En 1991, Zanardi est passé en championnat britannique de Formule 3, où il a été vice-champion. L'année suivante, il s'engage dans le championnat international de Formule 3000 et remporte deux courses, terminant troisième du championnat.
En 1994, Zanardi fait ses débuts en Formule 1 avec Minardi. Il a couru pour Jordan Grand Prix en 1996 avant de rejoindre Williams F1 Team. Sa carrière en Formule 1 ne fut cependant pas réussie et il n'a jamais marqué de points.
Zanardi a trouvé sa gloire dans les courses d'endurance et de tourisme après son départ de la Formule 1. Il a remporté deux titres consécutifs en IndyCar Series en 1997 et 1998, et un titre en tourisme carrossable en 2000.
En 2001, Zanardi a été gravement blessé lors d'une course à Germania en Allemagne. Il a perdu les deux jambes supérieures dans l'accident, mais il a décidé de continuer sa carrière sportive et s'est concentré sur la voiture à moteur adaptée à quatre roues.
Zanardi a continué à courir en IndyCar Series après son retour de l'accident et a remporté une victoire en 2003, ce qui a été sa dernière victoire dans la discipline. Il a pris sa retraite en 2006.
En 2019, Zanardi a participé aux Jeux Paralympiques de Tokyo en monoplace adaptée pour les athlètes à quatre roues et a remporté la médaille d'or. Depuis, il s'est concentré sur le management sportif et est devenu conseiller technique pour BMW Motorsport.