| 17-10 | 1 | | Chrono des Nations (1.1) | 44.0km |
| 10-10 | 31 | | Paris - Tours Elite (1.Pro) | 212.0km |
| 03-10 | DNF | | Paris-Roubaix (1.UWT) | 257.0km |
| 26-09 | 41 | | UCI World Championship Flanders (CM) | 268.0km |
| 19-09 | 5 | | UCI World Championship Flanders TT (CM) | 43.0km |
| 09-09 | 1 | | UEC Road European Championships TT (CC) | 22.0km |
| | | Benelux Tour (2.UWT) |
| 5 | | Klassement |
| 16 | | Punten |
| 05-09 | 19 | 5 | Stage 7Namur - Geraardsbergen (178.0km) | 178.0km |
| 04-09 | 21 | 4 | Stage 6Ottignies - Houffalize (207.0km) | 207.0km |
| 03-09 | 17 | 1 | Stage 5Riemst - Bilzen (188.0km) | 188.0km |
| 02-09 | 62 | 4 | Stage 4Aalter - Ardooie (166.0km) | 166.0km |
| 01-09 | 35 | 3 | Stage 3Essen - Hoogerheide (168.0km) | 168.0km |
| 31-08 | 3 | 3 | Stage 2Lelystad - Lelystad (11.0km) | 11.0km |
| 30-08 | 15 | 19 | Stage 1Surhuisterveen - Dokkum (169.0km) | 169.0km |
| 28-07 | 4 | | Olympic Games Tokyo TT (OS) | 44.0km |
| 24-07 | 40 | | Olympic Games (OS) | 234.0km |
| | | Tour de France (2.UWT) |
| 49 | | Klassement |
| 17 | | Punten |
| 60 | | Berg |
| 18-07 | 46 | 49 | Stage 21Chatou - Paris (108.0km) | 108.0km |
| 17-07 | 4 | 50 | Stage 20Libourne - Saint-Émilion (30.0km) | 30.0km |
| 16-07 | 116 | 54 | Stage 19Mourenx - Libourne (207.0km) | 207.0km |
| 15-07 | 50 | 53 | Stage 18Pau - Luz-Ardiden (129.0km) | 129.0km |
| 14-07 | 52 | 53 | Stage 17Muret - Saint-Lary-Soulan (Pla d'Adet) (178.0km) | 178.0km |
| 13-07 | 105 | 54 | Stage 16El Pas de la Casa - Saint-Gaudens (169.0km) | 169.0km |
| 11-07 | 69 | 53 | Stage 15Céret - Andorra La Vella (191.0km) | 191.0km |
| 10-07 | 70 | 44 | Stage 14Carcassonne - Quillan (183.0km) | 183.0km |
| 09-07 | 121 | 40 | Stage 13Nîmes - Carcassonne (219.0km) | 219.0km |
| 08-07 | 4 | 42 | Stage 12Saint-Paul-Trois-Châteaux - Nîmes (159.0km) | 159.0km |
| 07-07 | 77 | 57 | Stage 11Sorgues - Malaucène (198.0km) | 198.0km |
| 06-07 | 24 | 50 | Stage 10Albertville - Valence (190.0km) | 190.0km |
| 04-07 | 42 | 56 | Stage 9Cluses - Tignes (144.0km) | 144.0km |
| 03-07 | 62 | 62 | Stage 8Oyonnax - Le Grand-Bornand (150.0km) | 150.0km |
| 02-07 | 87 | 60 | Stage 7Vierzon - Le Creusot (249.0km) | 249.0km |
| 01-07 | 142 | 40 | Stage 6Tours - Châteauroux (160.0km) | 160.0km |
| 30-06 | 2 | 30 | Stage 5Change - Laval (27.0km) | 27.0km |
| 29-06 | 97 | 46 | Stage 4Redon - Fougères (150.0km) | 150.0km |
| 28-06 | 63 | 48 | Stage 3Lorient - Noyal-Pontivy (182.0km) | 182.0km |
| 27-06 | 73 | 53 | Stage 2Perros-Guirec - Mûr-de-Bretagne (183.0km) | 183.0km |
| 26-06 | 49 | 49 | Stage 1Brest - Landerneau (197.0km) | 197.0km |
| 16-06 | 1 | | National Road Championships - Switzerland TT (CN) | |
| | | Tour de Suisse (2.UWT) |
| 40 | | Klassement |
| 5 | | Punten |
| 13-06 | 62 | 40 | Stage 8Andermatt - Andermatt (118.0km) | 118.0km |
| 12-06 | 10 | 37 | Stage 7Sedrun - Andermatt (23.0km) | 23.0km |
| 11-06 | 70 | 43 | Stage 6Fiesch - Sedrun (162.0km) | 162.0km |
| 10-06 | 50 | 30 | Stage 5Gstaad - Leukerbad (172.0km) | 172.0km |
| 09-06 | 49 | 3 | Stage 4Sankt Urban - Gstaad (171.0km) | 171.0km |
| 08-06 | 32 | 3 | Stage 3Lachen - Pfaffnau (185.0km) | 185.0km |
| 07-06 | 26 | 1 | Stage 2Neuhausen am Rheinfall - Lachen (173.0km) | 173.0km |
| 06-06 | 1 | 1 | Stage 1Frauenfeld - Frauenfeld (10.0km) | 10.0km |
| | | Tour de Romandie (2.UWT) |
| 40 | | Klassement |
| 49 | | Punten |
| 15 | | Berg |
| 02-05 | 15 | 40 | Stage 5Freiburg - Freiburg (16.0km) | 16.0km |
| 01-05 | 71 | 43 | Stage 4Sion - Thyon (161.0km) | 161.0km |
| 30-04 | 46 | 31 | Stage 3Estavayer-le-Lac - Estavayer-le-Lac (168.0km) | 168.0km |
| 29-04 | 63 | 46 | Stage 2La Neuveville - Saint-Imier (165.0km) | 165.0km |
| 28-04 | 23 | 15 | Stage 1Aigle - Martigny (168.0km) | 168.0km |
| 27-04 | 14 | 14 | PrologueOron - Oron (4.0km) | 4.0km |
| | | Volta a la Comunitat Valenciana (2.Pro) |
| 1 | | Klassement |
| 2 | | Punten |
| 16 | | Berg |
| 18-04 | 36 | 1 | Stage 5Paterna - Valencia (95.0km) | 95.0km |
| 17-04 | 1 | 1 | Stage 4Xilxes - Almenara (21.0km) | 21.0km |
| 16-04 | 9 | 10 | Stage 3Torrent - Alto de la Reina (160.0km) | 160.0km |
| 15-04 | 29 | 12 | Stage 2Alicante - Alicante (184.0km) | 184.0km |
| 14-04 | 7 | 10 | Stage 1Elche - Ondara (166.0km) | 166.0km |
| 04-04 | 44 | | Ronde van Vlaanderen (1.UWT) | 254.0km |
| 31-03 | 63 | | Dwars door Vlaanderen (1.UWT) | 184.0km |
| 28-03 | 6 | | Gent-Wevelgem in Flanders Fields (1.UWT) | 247.0km |
| 26-03 | 20 | | E3 Saxo Bank Classic (1.UWT) | 203.0km |
| | | Tirreno-Adriatico (2.UWT) |
| 73 | | Klassement |
| 14 | | Punten |
| 16-03 | 2 | 73 | Stage 7San Benedetto del Tronto - San Benedetto del Tronto (11.0km) | 11.0km |
| 15-03 | 122 | 81 | Stage 6Castelraimondo - Lido di Fermo (169.0km) | 169.0km |
| 14-03 | 55 | 72 | Stage 5Castellalto - Castelfidardo (205.0km) | 205.0km |
| 13-03 | 59 | 94 | Stage 4Terni - Prati di Tivo (148.0km) | 148.0km |
| 12-03 | 154 | 116 | Stage 3Montalcino - Gualdo Tadino (189.0km) | 189.0km |
| 11-03 | 79 | 86 | Stage 2Camaiore - Chiusdino (226.0km) | 226.0km |
| 10-03 | 93 | 94 | Stage 1Lido di Camaiore - Lido di Camaiore (156.0km) | 156.0km |
| 06-03 | 31 | | Strade Bianche (1.UWT) | 184.0km |
| 28-02 | 20 | | Kuurne-Brussel-Kuurne (1.Pro) | 197.0km |
| 27-02 | 38 | | Omloop Het Nieuwsblad Elite (1.UWT) | 200.0km |