Passato professionista nel settembre 1946, gareggiò tra le altre per la Benotto, la Wilier Triestina, la Welter e l'Arbos, distinguendosi soprattutto nelle corse a tappe. Vinse due frazioni al Tour de France 1950 correndo con i colori dei "Cadetti italiani", una tappa al Giro del Lussemburgo e una al Giro d'Italia nel 1952, e una tappa al Giro di Svizzera 1953. Nel 1951 fu selezionato in Nazionale per la gara dei professionisti ai mondiali di Varese, che concluse al sedicesimo posto. Concluse la carriera agonistica nel 1958.