| | | Vuelta a España (GT) |
| 26-09 | DNF | | Stage 20Los Ángeles de San Rafael - Ávila | 199.0km |
| 25-09 | 40 | | Stage 19Valladolid - Los Ángeles de San Rafael | 193.0km |
| 24-09 | 71 | | Stage 18Burgos - Valladolid | 183.0km |
| 23-09 | 55 | | Stage 17Santander - Burgos | 182.0km |
| 22-09 | 104 | | Stage 16Cangas de Onís - Santander | 170.0km |
| 21-09 | 43 | | Stage 15Oviedo - Lagos de Covadonga | 159.0km |
| 20-09 | 85 | | Stage 14Oviedo - Naranco | 169.0km |
| 19-09 | 53 | | Stage 13Ponferrada - Valgrande-Pajares | 196.0km |
| 18-09 | 59 | | Stage 12León - Alto de El Morredero | 142.0km |
| 16-09 | 70 | | Stage 11Almendralejo - Plasencia | 194.0km |
| 15-09 | 123 | | Stage 10Córdoba - Almendralejo | 224.0km |
| 14-09 | 44 | | Stage 9Córdoba - Córdoba | 35.0km |
| 12-09 | 69 | | Stage 7Guadix - Alto de Sierra Nevada | 219.0km |
| 11-09 | 92 | | Stage 6Málaga - Granada | 147.0km |
| 10-09 | 91 | | Stage 5Jerez de la Frontera - Málaga | 230.0km |
| 09-09 | 91 | | Stage 4Huelva - Jerez de la Frontera | 192.0km |
| 08-09 | 101 | | Stage 3Loule - Huelva | 173.0km |
| 07-09 | 59 | | Stage 2Évora - Vilamoura | 225.0km |
| 06-09 | 90 | | Stage 1Lisboa - Estoril | 155.0km |
| 24-08 | 15 | | Meisterschaft von Zürich (CDM) | 237.0km |
| 22-08 | 8 | | Tre Valli Varesine (1.1) | 202.0km |
| 17-08 | 8 | | Rochester Classic (CDM) | 242.0km |
| 09-08 | 78 | | Clásica Ciclista San Sebastián (CDM) | 234.0km |
| 03-08 | 2 | | Trofeo Matteotti (1.3) | 203.0km |
| | | Tour de France (GT) |
| 18 | | Standings |
| 86 | | Points |
| 64 | | Mountain |
| 4 | | Youth |
| 27-07 | 50 | 18 | Stage 21Paris - Paris | 149.0km |
| 26-07 | 30 | 18 | Stage 20Paris - Paris | 49.0km |
| 25-07 | 58 | 17 | Stage 19Montbéliard - Dijon | 172.0km |
| 24-07 | 8 | 17 | Stage 18Colmar - Montbéliard | 175.0km |
| 23-07 | 74 | 17 | Stage 17Freiburg - Colmar | 218.0km |
| 22-07 | 40 | 17 | Stage 16Morzine - Freiburg | 181.0km |
| 21-07 | 22 | 17 | Stage 15Courchevel - Morzine | 208.0km |
| 20-07 | 37 | 19 | Stage 14Bourg-d'Oisans - Courchevel | 148.0km |
| 19-07 | 34 | 16 | Stage 13Saint-Étienne - L'Alpe-d'Huez | 203.0km |
| 18-07 | 37 | 14 | Stage 12Saint-Étienne - Saint-Étienne | 55.0km |
| 16-07 | 53 | 14 | Stage 11Andorra - Perpignan | 192.0km |
| 15-07 | 21 | 14 | Stage 10Luchon-Superbagnères - Andorra | 252.0km |
| 14-07 | 16 | 9 | Stage 9Pau - Loudenvielle-Le Louron | 182.0km |
| 13-07 | 96 | 21 | Stage 8Sauternes - Pau | 161.0km |
| 12-07 | 92 | 21 | Stage 7Marennes - Bordeaux | 194.0km |
| 11-07 | 89 | 15 | Stage 6Le Blanc - Marennes | 217.0km |
| 10-07 | 101 | 15 | Stage 5Chantonnay - La Châtre | 261.0km |
| 09-07 | 57 | 57 | Stage 4Plumelec - Puy du Fou | 223.0km |
| 08-07 | 26 | 13 | Stage 3Vire - Plumelec | 224.0km |
| 07-07 | 63 | 22 | Stage 2Saint-Valery-en-Caux - Vire | 262.0km |
| 06-07 | 56 | 22 | Stage 1Rouen - Forges-les-Eaux | 192.0km |
| 05-07 | 55 | 55 | PrologueRouen - Rouen | 7.0km |
| 29-06 | 8 | | National Road Championships - Italy (CN) | 251.0km |
| | | Tour de Suisse (2.1) |
| 7 | | Standings |
| 26-06 | | 7 | Stage 9Davos - Zürich | 186.0km |
| 24-06 | 4 | | Stage 7Zug - Wetzikon | 174.0km |
| 21-06 | 7 | | Stage 4Spiez - Spiez | 31.0km |
| 17-06 | 7 | | PrologueRomanshorn - Romanshorn | 7.0km |
| 15-06 | 2 | | Giro dell'Appennino (1.2) | 208.0km |
| | | Österreich-Rundfahrt (2.4) |
| 1 | | Standings |
| 07-06 | | 1 | Stage 9Villach - Villach | 173.0km |
| 06-06 | 8 | 1 | Stage 8Faakersee - Kurs | 168.0km |
| 05-06 | 1 | 1 | Stage 7Sankt Johann im Pongau - Villach | 170.0km |
| 04-06 | | 1 | Stage 6Lienz - Sankt Johann im Pongau | 153.0km |
| 03-06 | 4 | 1 | Stage 5Bad Hofgastein - Lienz | 148.0km |
| 02-06 | 4 | 1 | Stage 4Trumersee - Bad Hofgastein | 160.0km |
| 01-06 | | 1 | Stage 3Gröbming - Trumersee | 160.0km |
| 31-05 | 3 | 1 | Stage 2Graz - Gröbming | 208.0km |
| 30-05 | 1 | 1 | Stage 1Eisenstadt - Graz | 196.0km |
| 29-05 | 9 | | PrologueWien - Wien | 3.0km |
| 25-05 | 17 | | Rund um Köln (1.3) | 200.0km |