| 20-10 | 8 | | Chrono des Nations (1.1) | |
| | | Tour of Beijing (WT) |
| 117 | | Klassement |
| 15-10 | 128 | 117 | Stage 5Tian An Men Square - Bird's Nest Piazza (117.0km) | 117.0km |
| 14-10 | 94 | 116 | Stage 4Yanqing Gui Chuan Square - Mentougou Miaofeng (150.0km) | 150.0km |
| 13-10 | 112 | 114 | Stage 3Yanqing Gui Chuan Square - Qiandiajian (176.0km) | 176.0km |
| 12-10 | 72 | 112 | Stage 2Huairou - Yanqing Gui Chuan Square (201.0km) | 201.0km |
| 11-10 | 132 | 133 | Stage 1Shunyi Olympic - Huairou (190.0km) | 190.0km |
| 06-10 | DNF | | Giro di Lombardia (WT) | 242.0km |
| 25-09 | 29 | | UCI World Championship Firenze TT (CM) | 57.0km |
| 15-09 | 24 | | Tour du Doubs - Conseil Général (1.1) | |
| 08-09 | 95 | | GP de Fourmies (1.HC) | 205.0km |
| | | Tour du Poitou Charentes (2.1) |
| 30-08 | DNF | | Stage 5Ruelle-sur-Touvre - Poitiers (193.0km) | 193.0km |
| 29-08 | 15 | 15 | Stage 4Charroux - Civray (22.0km) | 22.0km |
| 29-08 | 29 | 27 | Stage 3Charroux - Civray (109.0km) | 109.0km |
| 28-08 | 53 | 50 | Stage 2Saintes - Angoulême (182.0km) | 182.0km |
| 27-08 | 46 | 48 | Stage 1Saint-Maixent-l'École - Saintes (197.0km) | 197.0km |
| 25-08 | 96 | | Châteauroux Classic de l'Indre Trophée Fenioux (1.1) | |
| | | Tour du Limousin (2.1) |
| 51 | | Klassement |
| 23-08 | 78 | 51 | Stage 4Bourganeuf - Limoges (178.0km) | 178.0km |
| 22-08 | 60 | 50 | Stage 3Ussac - Chamboulive (182.0km) | 182.0km |
| 21-08 | 28 | 48 | Stage 2Rochechouart - Ambazac (185.0km) | 185.0km |
| 20-08 | 68 | 68 | Stage 1Limoges - Rochechouart (168.0km) | 168.0km |
| 27-07 | DNF | | Clásica Ciclista San Sebastián (WT) | 234.0km |
| | | Tour de France (WT) |
| 126 | | Klassement |
| 86 | | Punten |
| 50 | | Berg |
| 21-07 | 156 | 126 | Stage 21Versailles - Paris (133.0km) | 133.0km |
| 20-07 | 104 | 125 | Stage 20Annecy - Annecy (125.0km) | 125.0km |
| 19-07 | 113 | 127 | Stage 19Bourg-d'Oisans - Le-Grand-Bornand (204.0km) | 204.0km |
| 18-07 | 162 | 127 | Stage 18Gap - L'Alpe-d'Huez (172.0km) | 172.0km |
| 17-07 | 33 | 125 | Stage 17Embrun - Chorges (32.0km) | 32.0km |
| 16-07 | 155 | 130 | Stage 16Vaison-la-Romaine - Gap (168.0km) | 168.0km |
| 14-07 | 97 | 128 | Stage 15Givors - Mont Ventoux (242.0km) | 242.0km |
| 13-07 | 164 | 131 | Stage 14Saint-Pourçain-sur-Sioule - Lyon (191.0km) | 191.0km |
| 12-07 | 167 | 130 | Stage 13Tours - Saint-Amand-Montrond (173.0km) | 173.0km |
| 11-07 | 132 | 123 | Stage 12Fougères - Tours (218.0km) | 218.0km |
| 10-07 | 8 | 120 | Stage 11Avranches - Le Mont-Saint-Michel (33.0km) | 33.0km |
| 09-07 | 129 | 123 | Stage 10Saint-Gildas-des-Bois - Saint-Malo (197.0km) | 197.0km |
| 07-07 | 108 | 123 | Stage 9Saint-Girons - Bagnères-de-Bigorre (168.0km) | 168.0km |
| 06-07 | 119 | 125 | Stage 8Castres - Ax-3 Domaines (195.0km) | 195.0km |
| 05-07 | 78 | 124 | Stage 7Montpellier - Albi (205.0km) | 205.0km |
| 04-07 | 74 | 157 | Stage 6Aix-en-Provence - Montpellier (176.0km) | 176.0km |
| 03-07 | 162 | 168 | Stage 5Cagnes-sur-Mer - Marseille (228.0km) | 228.0km |
| 02-07 | 15 | 136 | Stage 4Nice - Nice (25.0km) | 25.0km |
| 01-07 | 93 | 141 | Stage 3Ajaccio - Calvi (145.0km) | 145.0km |
| 30-06 | 152 | 169 | Stage 2Bastia - Ajaccio (156.0km) | 156.0km |
| 29-06 | 133 | 133 | Stage 1Porto-Vecchio - Bastia (213.0km) | 213.0km |
| 23-06 | 40 | | National Road Championships - France (CN) | 251.0km |
| 20-06 | 2 | | National Road Championships - France TT (CN) | 45.0km |
| | | Tour de Suisse (WT) |
| 50 | | Klassement |
| 16-06 | 26 | 50 | Stage 9Bad Ragaz - Flumserberg (26.0km) | 26.0km |
| 15-06 | 57 | 53 | Stage 8Zernez - Bad Ragaz (180.0km) | 180.0km |
| 14-06 | 64 | 52 | Stage 7Meilen - La Punt (206.0km) | 206.0km |
| 13-06 | 108 | 53 | Stage 6Leuggern - Meilen (186.0km) | 186.0km |
| 12-06 | 95 | 53 | Stage 5Buochs - Leuggern (176.0km) | 176.0km |
| 11-06 | 126 | 53 | Stage 4Innertkirchen - Buochs (161.0km) | 161.0km |
| 10-06 | 67 | 54 | Stage 3Montreux - Meiringen (203.0km) | 203.0km |
| 09-06 | 58 | 50 | Stage 2Quinto - Crans-Montana (161.0km) | 161.0km |
| 08-06 | 79 | 79 | Stage 1Quinto - Quinto (8.0km) | 8.0km |
| | | Bayern-Rundfahrt (2.HC) |
| 4 | | Klassement |
| 26-05 | 31 | 4 | Stage 5Kelheim - Nürnberg (169.0km) | 169.0km |
| 25-05 | 5 | 4 | Stage 4Schierling - Schierling (31.0km) | 31.0km |
| 24-05 | 65 | 21 | Stage 3Viechtach - Kelheim (196.0km) | 196.0km |
| 23-05 | 24 | 20 | Stage 2Mühldorf am Inn - Viechtach (192.0km) | 192.0km |
| 22-05 | 45 | 45 | Stage 1Pfaffenhofen an der Ilm - Mühldorf am Inn (193.0km) | 193.0km |
| | | Tour de Romandie (WT) |
| 93 | | Klassement |
| 28-04 | 17 | 93 | Stage 5Genève - Genève (18.0km) | 18.0km |
| 27-04 | 70 | 97 | Stage 4Marly - Les Diablerets (188.0km) | 188.0km |
| 26-04 | 149 | 138 | Stage 3Payerne - Payerne (181.0km) | 181.0km |
| 25-04 | 134 | 139 | Stage 2Prilly - Granges (190.0km) | 190.0km |
| 24-04 | 145 | 130 | Stage 1Saint-Maurice - Renens (176.0km) | 176.0km |
| 23-04 | 139 | 139 | PrologueLe Châble - Bruson (7.0km) | 7.0km |
| 21-04 | 53 | | La Roue Tourangelle (1.1) | 195.0km |
| 17-04 | DNF | | La Flèche Wallonne (WT) | 205.0km |
| 13-04 | 34 | | Tour du Finistère (1.1) | |
| | | Vuelta Ciclista al Pais Vasco (WT) |
| 04-04 | DNF | | Stage 4La Lejana-Trapagaran - Eibar (151.0km) | 151.0km |
| 03-04 | 149 | 148 | Stage 3Vitoria-Gasteiz - La Lejana-Trapagaran (167.0km) | 167.0km |
| 02-04 | 158 | 147 | Stage 2Elgoibar - Vitoria-Gasteiz (170.0km) | 170.0km |
| 01-04 | 99 | 99 | Stage 1Elgoibar - Elgoibar (156.0km) | 156.0km |
| 29-03 | 17 | | Route Adélie de Vitré (1.1) | 198.0km |
| | | Critérium International (2.HC) |
| 48 | | Klassement |
| 1 | | Berg |
| 24-03 | 48 | 48 | Stage 3Porto-Vecchio - Col de l'Ospedale (176.0km) | 176.0km |
| 23-03 | 51 | 6 | Stage 1Porto-Vecchio - Porto-Vecchio (89.0km) | 89.0km |
| 23-03 | 27 | 24 | Stage 2Porto-Vecchio - Porto-Vecchio (7.0km) | 7.0km |
| | | Paris - Nice (WT) |
| 132 | | Klassement |
| 10-03 | 25 | 132 | Stage 7Nice - Col d'Eze (9.0km) | 9.0km |
| 09-03 | 144 | 138 | Stage 6Manosque - Nice (220.0km) | 220.0km |
| 08-03 | 119 | 148 | Stage 5Châteauneuf-du-Pape - La Montagne de Lure (176.0km) | 176.0km |
| 07-03 | 165 | 162 | Stage 4Brioude - Saint-Vallier (199.0km) | 199.0km |
| 06-03 | 173 | 165 | Stage 3Châtel-Guyon - Brioude (170.0km) | 170.0km |
| 05-03 | 158 | 160 | Stage 2Vimory - Cérilly (200.0km) | 200.0km |
| 04-03 | 135 | 128 | Stage 1Saint-Germain-en-Laye - Nemours (195.0km) | 195.0km |
| 03-03 | 37 | 37 | PrologueHouilles - Houilles (2.0km) | 2.0km |
| 24-02 | DNF | | Classic Sud Ardèche - Souvenir Francis Delpech (1.1) | 198.0km |
| | | Tour Méditerranéen (2.1) |
| 29 | | Klassement |
| 10-02 | 39 | 29 | Stage 5Bandol - Grasse (167.0km) | 167.0km |
| 09-02 | 38 | 17 | Stage 4Rousset - Toulon (Mont Faron) (151.0km) | 151.0km |
| 07-02 | 5 | 5 | Stage 2Le Cap d'Agde - Sète (24.0km) | 24.0km |
| 06-02 | 27 | 27 | Stage 1Limoux - Gruissan (141.0km) | 141.0km |
| | | Etoile de Bessèges (2.1) |
| 03-02 | 44 | 31 | Stage 5Alès - Alès (69.0km) | 69.0km |
| 03-02 | 2 | 4 | Stage 6Alès - Alès (9.0km) | 9.0km |
| 02-02 | 63 | 34 | Stage 4Sabran - Pont-Saint-Esprit (154.0km) | 154.0km |
| 01-02 | 28 | 33 | Stage 3Bessèges - Bessèges (152.0km) | 152.0km |
| 31-01 | 63 | 48 | Stage 2Nîmes - Les Fumades (157.0km) | 157.0km |
| 30-01 | 42 | 42 | Stage 1Bellegarde - Beaucaire (154.0km) | 154.0km |