Als 22-Jähriger hatte er bei der Tour de l’Avenir 1962 in der Squadra Azzurra sein Debüt und konnte je einmal Etappenzweiter und Etappendritter werden. Bedeutendster Erfolg war 1963 der Sieg beim Gran Premio Belvedere und 1964 bei der italienischen Straßenmeisterschaft. Nach einem achtbaren 10. Platz bei der Straßenweltmeisterschaft der Amateure wurde er bei den Olympischen Sommerspielen 1964 in Tokio Olympiasieger im olympischen Straßenrennen. Seine Siegerzeit über die Distanz von 195 Kilometern bei strömendem Regen betrug vier Stunden, 39 Minuten, 51 Sekunden und 63 Hundertstel. Damit lag er in einer der knappsten Entscheidungen in der olympischen Radsportgeschichte nur zwei Hundertstel Sekunden vor dem Zweitplatzierten Dänen Kjell Rodian und elf Hundertstel Sekunden vor dem Belgier Walter Godefroot als Bronzemedaillengewinner.