Les Woodland's book Paris-Roubaix: The Inside Story - All the bumps of cycling's cobbled classic is available in print, Kindle eBook & audiobook versions. To get your copy, just click on the Amazon link on the right.
The race:
Milano-Torino is one of cycling's oldest races. The first edition was run in 1876, though it was not organized again until 1893. It was not run consistantly until 1911.
It's a single-day race that starts just outside of Milan. The course heads in a southwest direction to finish in Torino in the region of Piedmont.
Milano-Torino has had a troubled history in recent years. It has been bounced between spring and fall and was held a week before Il Lombardia (Giro di Lombardia).
But in 2022, it was run in March.
Probably because of Italy's economic difficulties, the race was not held from 2008 through 2011. The race owner (RCS Sport, which owns the Giro d'Italia and Milano-San Remo, among other important competitions) has had the Associazione Ciclista Arona organize the race since it was restarted in 2012.
It's a fast race, the current average speed record of 48.194 km/hr was set in 2023 by Arvid De Kleijn.
Complete podium history:
Year |
1st Place |
2nd Place |
3rd Place |
Distance |
Average Speed |
1876 | Paolo Magretti 10hr 9min |
Carlo Ricci-Gariboldi @ 1hr 15min |
Bartolomeo Balbiani @ 1hr 21min |
150 km | 14.8 |
1877 1892 |
Race not held | ||||
1893 | Luigi Airaldi 5hr 15min |
Giacomo Capella @ 15min |
Luigi Masetti @ 19min |
150 km | 28.6 |
1894 1895 |
Race not held | ||||
1896 | Giovanni Moro | Federico Goll | F. Gilardini | ||
1897 1902 |
Race not held | ||||
1903 | Giovanni Gerbi | Giovanni Rossignoli | Ferdinand Coppa | ||
1904 | Race not held | ||||
1905 | Giovanni Rossignoli | Giovanni Cuniolo | Giuliano Tagliavini | ||
1906 1910 |
Race not held | ||||
1911 | Henri Pelissier 8hr 40min |
Carlo Durando @ s.t. |
Domenico Allasia @ s.t. |
222 km | 26.62 |
1912 | Race not held | ||||
1913 | Giuseppe Azzini 7hr 10min 44sec |
Carlo Durando @ s.t. |
Ezio Corlaita @ s.t. |
210 km | 29.25 |
1914 | Costnate Girardengo 9hr 24min |
Giuseppe Azzini @ s.t. |
Carlo Durando @ s.t. |
260 km | 27.66 |
1915 | Costante Girardengo 9hr 28min 27sec |
Giovanni Roncon @ 2 bike lengths |
Lauro Bordin @ 3 bike lengths |
260 km | 27.44 |
1916 | Race not held | ||||
1917 | Oscar Egg 6hr 12min |
Leopoldo Torricelli @ s.t. |
Luigi Natale Lucotti @ s.t. |
186.8 km | 30.13 |
1918 | Gaetano Belloni | Alfredo Sivocci | Angelo Vay | ||
1919 | Costante Girardengo 8hr 39min 4sec |
Giuseppe Oliveri @ s.t. |
Giuseppe Azzini @ s.t. |
254 km | 29.360 |
1920 | Costante Girardengo 9hr 6min |
Gaetano Belloni @ s.t. |
Leopoldo Torricelli @ s.t. |
258 km | 28.35 |
1921 | Federico Gay 12hr 15min 35sec |
Giovanni Brunero @ s.t. |
Bartolomeo Aimo @ s.t. |
286 km | 23.328 |
1922 | Adriano Zanaga | Emilio Petiva | Federico Gay | ||
1923 | Costante Girardengo 10hr 0min |
Gaetano Belloni @ 7min 30sec |
Giovanni Brunero @ s.t. |
286 km | 28.6 |
1924 | Federico Gay 11hr 24min |
Michele Gordini @ 12min |
Angelo Gremo @ s.t. |
286 km | 25.09 |
1925 | Adriano Zanaga 9hr 45min 20sec |
Domenico Piemontesi @ s.t. |
Giuseppe Pancera @ s.t. |
286 km | 29.316 |
1926 1930 |
Race not held | ||||
1931 | Giuseppe Graglia 6hr 42min |
Piero Polano @ 1 bike length |
Giuseppe Olmo @ 1.5 bike lengths |
200 km | 29.85 |
1932 | Giuseppe Olmo 6hr 18min 47sec |
Giiuseppe Graglia @ 1/2 bike length |
Giuseppe Martano @ 1 bike length |
200 km | 31.68 |
1933 | Giurseppe Graglia 6hr 5min |
Atillio Masarati @ 2 bike lengths |
Antonio Folco @ s.t. |
210 km | 34.51 |
1934 | Mario Cipriani 7hr 14min 15sec |
Orlando Teani @ 30sec |
Giuseppe Graglia @ 1min 45sec |
243.8 km | 33.685 |
1935 | Giovanni Gotti 7hr 25min 10sec |
Aladino Mealli @ 2min 40sec |
Aldo Bini @ 7min 20sec |
244.9 km | 33.034 |
1936 | Cesare Del Cancia 7hr 12min 30sec |
Olimpio Bizzi @ 2min 10sec |
Mario Cipriani @ 4min 0sec |
244.9 km | 33.975 |
1937 | Giuseppe Martano 7hr 20min 30sec |
Cesare Del Cancia @ 4min 10sec |
Augusto Introzzi @ 4min 16sec |
254 km | 34.630 |
1938 | Pierino Favalli 7hr 24min |
Giuseppe Olmo @ 1/2 wheel |
Faustino Montesi @ 1 bike length |
258 km | 34.86 |
1939 | Pierino Favalli 6hr 39min |
Michele Benente @ 22sec |
Giovanni Gotti @ 3min 0sec |
246.4 km | 37.053 |
1940 | Pierino Favalli 6hr 38min 45sec |
Pietro Chiappini @ 1 bike length |
Francesco Albani @ 1.5 bike lengths |
239.4 km | 36.022 |
1941 | Pietro Chiappini 5hr 20min |
Ruggero Moro @ 1/2 bike length |
Pietro Rimoldi @ 3/4 bike length |
190 km | 35.63 |
1942 | Pietro Chiappini 7hr 34min |
Osvaldo Bailo @ s.t. |
Salvatore Crippa @ s.t. |
239.4 km | 39.64 |
1943 1944 |
Race not held | ||||
1945 | Vito Ortelli 5hr 24min |
Enzo Coppini @ 1min 50sec |
Guerrino Tomasoni @ s.t. |
183 km | 33.89 |
1946 | Vito Ortelli 7hr 30min |
Oreste Conte @ 1 wheel |
Guido Ellli @ s.t. |
256 km | 34.1 |
1947 | Italo De Zan 7hr 3min |
Giovanni Pinarello @ s.t. |
Egidio Ferugio @ s.t. |
219 km | 31.064 |
1948 | Sergio Maggini 5hr 31min |
Italo De Zan @ s.t. |
Luciano Pezzi @ s.t. |
206 km | 37.341 |
1949 | Luigi Casola 5hr 54min |
Aldo Bini @ 1 bike length |
Italo De Zan @ s.t. |
205 km | 36.069 |
1950 | Adolfo Grosso 5hr 16min 10sec |
Fausto Marini @ s.t. |
Livio Isotti @ s.t. |
207 km | 39.283 |
1951 | Fiorenzo Magni 5hr 29min |
Giorgio Albani @ s.t. |
Alfredo Martini @ s.t. |
205 km | 37.385 |
1952 | Aldo Bini 5hr 55min |
Oreste Conte @ s.t. |
Alfio Ferrari @ s.t. |
228 km | 38.535 |
1953 | Luciano Maggini 5hr 53min 4sec |
Loretto Petrucci @ s.t. |
Donato Zampini @ s.t. |
225.9 km | 38.389 |
1954 | Agostino Coletto 5hr 45min |
Fiorenzo Magni @ 1min 30sec |
Luciano Maggini @ s.t. |
215 km | 37.391 |
1955 | Cleto Maule 5hr 38min 52sec |
Aldo Moser @ s.t. |
Giorgio Albani @ 57sec |
221 km | 39.130 |
1956 | Ferdy Kübler 5hr 48min 45sec |
Germain Derijcke @ s.t. |
Roberto Falaschi @ s.t. |
225 km | 38.709 |
1957 | Miguel Poblet 5hr 51min |
Alfred de Bruyne @ s.t. |
Guido Messina @ s.t. |
233 km | 39.829 |
1958 | Agostino Coletto 4hr 10min |
Miguel Poblet @ 1min 34sec |
Armando Pellegrini @ s.t. |
178 km | 42.720 |
1959 | Nello Fabbri 4hr 9min |
Guido Carlesi @ s.t. |
Agostino Coletto @ s.t. |
172 km | 41.446 |
1960 | Arnaldo Pambianco 4h 46min |
Guido Carlesi @ 12sec |
Gastone Nencini @ s.t. |
198 km | 41.538 |
1961 | Walter Martin 4hr 27min |
Angelo Conterno @ s.t. |
Alessandro Fantini @ 26sec |
201 km | 45.168 |
1962 | Franco Balmamion @ 4hr 35min 6sec |
Vittorio Adorni @ s.t. |
Dino Bruni @ 16sec |
203 km | 44.275 |
1963 | Franco Cribiori 6hr 21min 58sec |
Carlo Chiappano @ 7sec |
Giovanni Bettinelli @ 8sec |
249 km | 39.113 |
1964 | Valentin Uriona 4hr 38min 50sec |
Italo Zilioli @ 21sec |
Franco Cribiori @ 37sec |
201 km | 43.251 |
1965 | Vito Taccone 4hr 36min 20sec |
Marino Vigna @ s.t. |
Romeo Venturelli @ s.t. |
201 km | 43.642 |
1966 | Marino Vigna 4hr 39min 10sec |
Michele Dancelli @ s.t. |
Dino Zandegù @ 8sec |
201km | 43.200 |
1967 | Gianni Motta 4hr 46min 12sec |
Franco Bitossi @ 23sec |
Vittorio Adorni @ s.t. |
201 km | 42.138 |
1968 | Franco Bitossi | Italo Zilioli | Michele Dancelli | ||
1969 | Claudio Michelotto 5hr 16min 13sec |
Martin Van den Bossche @ 49sec |
Franco Bitossi @ 55sec |
209 km | 39.843 |
1970 | Luciano Armani 5hr 18min 45sec |
Guido Reybrouck @ 34sec |
Davide Boifava @ 41sec |
215 km | 40.471 |
1971 | Georges Pintens | Enrico Paolini | Marinus Wagtmans | ||
1972 | Roger de Vlaeminck 5hr 7min 54sec |
Franco Bitossi @ s.t. |
Gianni Motta @ s.t. |
209 km | 40.727 |
1973 | Marcello Bergamo | Franco Bitossi | Roger de Vlaeminck | ||
1974 | Roger de Vlaeminck 5hr 10min |
Marcello Bergamo @ s.t. |
Italo Zilioli @ s.t. |
209 km | 40.451 |
1975 | Wladimiro Panizza 5hr 57min |
Enrico Paolini @ 54sec |
Roger de Vlaeminck @ s.t. |
243 km | 40.840 |
1976 | Enrico Paolini | Franco Bitossi | Eddy Verstraeten | ||
1977 | Rik van Linden | Walter Godefroot | Alfons de Bal | ||
1978 | Pierino Gavazzi | Vittorio Algeri | Franco Bitossi | ||
1979 | Alfio Vandi | Claude Criquielion | Wladimiro Panizza |
1980 | Giovanni Battaglin | Francesco Moser | Roberto Ceruti | ||
1981 | Giuseppe Martinelli | Giovanni Renosto | Nazzareno Berto | ||
1982 | Giuseppe Saronni | Noël de Jonckheere | Rik van Linden | ||
1983 | Francesco Moser | Silvestro Milani | Peter Kehl | ||
1984 | Paolo Rosola | Guido Bontempi | Roger de Vlaeminck | ||
1985 | Daniele Caroli | Stephan Mutter | Dante Morandi | ||
1986 | Race not held | ||||
1987 | Phil Anderson | Flavio Giupponi | Tony Rominger | ||
1988 | Rolf Gölz | Phil Anderson | Luc Roosen | ||
1989 | Rolf Gölz | Dag-Erik Pedersen | Tony Rominger | ||
1990 | Mauro Gianetti 4hr 51min 58sec |
Jean-Claude Leclercq @ s.t. |
Gilles Delion @ s.t. |
214 km | 43.977 |
1991 | Davide Cassani | Tony Rominger | Sammie Moreels | ||
1992 | Gianni Bugno | Rolf Aldag | Tony Rominger | ||
1993 | Rolf Sørensen | Paolo Fornaciari | Francesco Frattini | ||
1994 | Francesco Casagrande | Mauro Gianetti | Zenon Jaskula | ||
1995 | Stefano Zanini | Rolf Sørensen | Francesco Casagrande | ||
1996 | Daniele Nardello | Stefano Zanini | Laurent Jalabert | ||
1997 | Laurent Jalabert 4hr 54min 58sec |
Alex Zülle @ s.t. |
Paolo Lanfranchi @ 22sec |
207 km | 42.106 |
1998 | Niki Aebersold 4hr 50min 12sec |
Oskar Camenzind @ s.t. |
Marco Serpellini @ s.t. |
209 km | 43.211 |
1999 | Markus Zberg 4hr 24min 55sec |
Paolo Bettini @ s.t. |
Jan Ullrich @ s.t. |
202 km | 45.750 |
2000 | Race not held | ||||
2001 | Mirko Celestino 4hr 25min 6sec |
Niki Aebersold @ s.t. |
Eddy Mazzoleni @ s.t. |
202 km | 45.718 |
2002 | Michele Bartoli 4hr 37min 44sec |
Oskar Camenzind @ s.t. |
Gabriele Missaglia @ s.t. |
199 km | 42.990 |
2003 | Mirko Celestino 4hr 56min 52sec |
Davide Rebellin @ s.t. |
Miguel Angel Perdiguero @ s.t. |
198 km | 40.017 |
2004 | Marcos Serrano 4hr 32min 10sec |
Eddy Mazzoleni @ 2sec |
Francesco Casagrande @ s.t. |
199 km | 43.830 |
2005 | Fabio Sacchi 4hr 47min 41sec |
Mirko Celestino @ s.t. |
Paolo Tiralongo @ s.t. |
199 km | 41.503 |
2006 | Igor Astarloa 4hr 30min 36sec |
Franco Pellizotti @ s.t. |
Mirko Celestino @ s.t. |
199 km | 41.124 |
2007 | Danilo Di Luca 4hr 32min 40sec |
Mauricio Soler @ s.t. |
Kim Kirchen @ 9sec |
199 km | 43.798 |
2008- 2011 |
Race not held | ||||
2012 | Alberto Contador 4hr 32min 12sec |
Diego Ulissi @ 15sec |
Frederik Kessiakoff @ 24sec |
193.5 km | 42.652 |
2013 | Diego Ulissi 4hr 21min 2sec |
Rafal Majka @ 3sec |
Daniel Moreno @ 5sec |
193.5 km | 44.477 |
2014 | Giampaolo Caruso 4hr 30min 12sec |
Rinaldo Nocentini @ 3sec |
Daniel Moreno @ 9sec |
193.5 km | 42.968 |
2015 | Diego Rosa 4hr 25min 51sec |
Rafal Majka @ 16sec |
Fabio Aru @ 18sec |
186 km | 41.665 |
2016 | Miguel Angel Lopez 4hr 13min 36sec |
Michael Woods @ 9sec |
Rigoberto Uran @ 14sec |
186 km | 44.006 km/hr |
2017 | Rigoberto Uran 4hr 24min 51sec |
Adam Yates @ 10sec |
Fabio Aru @ 20sec |
186 km | 42.137 km/hr |
2018 | Thibaut Pinot 4hr 43min 36sec |
Miguel Lopez @ 10sec |
Alejandro Valverde @ 28sec |
200 km | 42.313 km/hr |
2019 | Michael Woods 4hr 3min 48sec |
Alejandro Valverde @ s.t. |
Adam Yates @ 3sec |
179 km | 44.173 km/hr |
2020 | Arnaud Demare 4hr 18min 57sec |
Caleb Ewan @ s.t. |
Wout Van Aert @ s.t. |
198 km | 45.878 km/hr |
2021 | Primoz Roglic 4hr 17min 41sec |
Adam Yates @ 12sec |
Joao Almeida @ 35sec |
190 km | 44.240 km/hr |
2022 | Mark Cavendish 4hr 31min 22sec |
Nacer Bouhanni @ s.t. |
Alexander Kristoff @ s.t. |
199 km | 44.000 km/hr |
2023 | Arvid De Kleijn 3hr 59min 2sec |
Fernando Gaviria @ s.t. |
Casper Van Uden @ s.t. |
192 km | 48.194 km/hr |
2024 | Alberto Bettiol 3hr 54min 13sec |
Jan Christen @ 7sec |
Marc Hirschi @ 9sec |
177 km | 45.343 km/hr |