Da ragazzo lavorava come garzone da un riparatore di biciclette di Arcore. All'inizio degli anni quaranta cominciò a gareggiare. Da dilettante nel 1946, al Vigorelli, stabilì il record dell'ora su tandem in coppia con Antonio Ausenda. Nel 1948 divenne professionista e venne chiamato nella squadra Bianchi di Fausto Coppi, dove rimase sino al 1954, sempre fedele gregario. In seguito corse un anno per la Legnano e uno per la Ignis, lasciando poi l'attività agonistica nel 1956.
Buon passista, si difendeva abbastanza bene su tutti i terreni, in salita e in pianura. Vinse nel 1950 la Coppa Bernocchi e ottenne diversi piazzamenti in numerose gare, tra le quali la Coppa Agostoni e il Giro di Romagna. Al fianco di Coppi parrtecipò a sei edizioni del Giro d'Italia e al Tour de France 1952.