Professionista dal 1950 al 1962.
Carriera Nel 1951 si impose nel Gran Premio Industria e Commercio di Prato, vinse la prima tappa del Giro delle Dolomiti e fu Maglia Bianca al Giro d'Italia, classificandosi ottavo nella graduatoria finale della corsa a tappe nazionale.
Nel 1952 venne ingaggiato dall'Atala: quell'anno vinse la seconda edizione del Gp dell'industria a Belmonte Piceno, il Gp Bevilacqua, la prima edizione della Bolzano-Trento e una tappa al Giro del Mediterraneo, oltre a diversi buoni piazzamenti come i tre terzi posti al Giro di Lombardia, nella Tre Valli Varesine e al Giro del Ticino.
Nelle stagioni seguenti continuò ad ottenere buone prestazioni, come il secondo posto al Giro del Lazio del 1954, ma non arrivarono successi fino al 1955, quando vinse una tappa al Tour de Suisse davanti ad Hugo Koblet, il quale però si prese la rivincita battendolo nel Giro del Ticino. Quell'anno arrivò anche il successo al Giro di Toscana con un allungo sul finale di gara. Nel 1956 vinse l'ottava tappa del Giro d'Italia (traguardo a Pescara) e l'undicesima tappa del Tour de France (Rouen), nel 1958 l'undicesima tappa del Tour de France (Bordeaux), nel 1959 la quattordicesima al Giro (Genova) e l'anno seguente, ancora al giro, vinse la volata di Milano (ventunesima tappa).
Palmarès 1950 (dilettanti) Coppa Caivano
1951 (Lygie, tre vittorie) Gran Premio Industria e Commercio di Prato 1ª tappa Giro delle Dolomiti (Treviso > Trento) Primo nella classifica finale della Maglia Bianca al Giro d'Italia
1952 (Atala-Pirelli, quattro vittorie) 3ª tappa Gran Premio del Mediterraneo (Bari > Taranto) Bolzano-Trento Gran Premio Industria - Belmonte-Piceno GP Bevilacqua
1955 (Atala-Pirelli & Lygie, due vittorie) Giro di Toscana 4ª tappa Tour de Suisse (Ginevra > Sion)
1956 (Atala-Pirelli & Arrow, due vittorie) 8ª tappa Giro d'Italia (Rimini > Pescara) 3ª tappa Tour de France (Lilla > Rouen)
1958 (Atala-Pirelli, due vittorie) 11ª tappa Tour de France (Royan > Bordeaux) Primo nel Criterium di Montignes
1959 (Atala-Pirelli, una vittoria) 17ª tappa Giro d'Italia (San Pellegrino Terme > Genova)
1960 (Gazzola, una vittoria) 21ª tappa Giro d'Italia (Bormio > Milano)
Piazzamenti Grandi giri
Giro d'Italia 1951: 8º 1952: 16º 1953: 17º 1956: 12º 1957: 41º 1958: 65º 1959: 84º 1960: 83º
Tour de France 1956: 26º 1957: 20º 1958: 45º 1959: 52º
Vuelta a España 1956: 19º
Classiche monumento
Milano-Sanremo 1951: 27º 1953: 18º 1955: 98º 1956: 8º 1957: 74º 1958: 77º 1959: 34º 1960: 91º 1961: 78º
Parigi-Roubaix 1960: 47º
Giro di Lombardia 1950: 33º 1951: 10º 1952: 3º 1953: 41º 1954: 26º 1955: 11º 1957: 27º 1959: 101º
Competizioni mondiali Campionati del mondo Waregem 1957 - In linea: 28º
Note
Collegamenti esterni