| 22-11 | 24 | | Val d'Ille Intermarché Cyclo-cross Tour
(C2) | |
| 21-11 | 26 | | Cyclo-cross International de Pierric (C2) | |
| 19-09 | DNF | | Primus Classic Impanis - Van Petegem (1.HC) | |
| 13-09 | 46 | | Tour du Doubs (1.1) | |
| | | Tour du Limousin (2.1) |
| 69 | | Klassement |
| 21-08 | 76 | 69 | Stage 4Aixe-sur-Vienne - Limoges (164.0km) | 164.0km |
| 20-08 | 28 | 69 | Stage 3Saint-Dizier-Leyrenne - Aigurande (185.0km) | 185.0km |
| 19-08 | 79 | 75 | Stage 2Pompadour - Lissac-sur-Couze (188.0km) | 188.0km |
| 18-08 | 11 | 14 | Stage 1Limoges - Saint-Yrieix-la-Perche (176.0km) | 176.0km |
| | | Post Danmark Rundt - Tour of Denmark (2.HC) |
| 65 | | Klassement |
| 08-08 | 18 | 65 | Stage 6Hillerød - Frederiksberg (155.0km) | 155.0km |
| 07-08 | 8 | 73 | Stage 4Slagelse - Frederiksværk (115.0km) | 115.0km |
| 07-08 | 48 | 72 | Stage 5Helsingør - Helsingør (13.0km) | 13.0km |
| 06-08 | 94 | 87 | Stage 3Vejle - Vejle (185.0km) | 185.0km |
| 05-08 | 44 | 89 | Stage 2Ringkøbing - Århus (235.0km) | 235.0km |
| 04-08 | 97 | 98 | Stage 1Struer - Holstebro (180.0km) | 180.0km |
| | | Tour de Wallonie (2.HC) |
| 73 | | Klassement |
| 29-07 | 76 | 73 | Stage 5Chimay - Thuin (167.0km) | 167.0km |
| 28-07 | 62 | 70 | Stage 4Waterloo - Quaregnon (164.0km) | 164.0km |
| 27-07 | 70 | 71 | Stage 3Bastogne - Namur (207.0km) | 207.0km |
| 26-07 | 74 | 78 | Stage 2Beaufays - Bassenge (171.0km) | 171.0km |
| 25-07 | 80 | 80 | Stage 1Wanze - Hannut (190.0km) | 190.0km |
| 28-06 | DNF | | National Road Championships - France (CN) | 247.0km |
| | | Critérium du Dauphiné (WT) |
| 12-06 | DNF | | Stage 6Saint-Bonnet-en-Champsaur - Villard-de-Lans (183.0km) | 183.0km |
| 11-06 | 56 | 105 | Stage 5Digne-les-Bains - Pra-Loup (161.0km) | 161.0km |
| 10-06 | 133 | 138 | Stage 4Anneyron - Sisteron (228.0km) | 228.0km |
| 09-06 | 16 | 127 | Stage 3Roanne - Montagny (24.0km) | 24.0km |
| 08-06 | 9 | 7 | Stage 2Le Bourget-du-Lac - Villars-les-Dombes (173.0km) | 173.0km |
| 07-06 | 12 | 12 | Stage 1Ugine - Albertville (132.0km) | 132.0km |
| | | Tour de Picardie (2.1) |
| 114 | | Klassement |
| 17-05 | 112 | 114 | Stage 3Athies - Mers-les-Bains (189.0km) | 189.0km |
| 16-05 | 118 | 120 | Stage 2Villers-Saint-Paul - Fleurines (168.0km) | 168.0km |
| 15-05 | 119 | 120 | Stage 1Moy-de-l'Aisne - Tergnier (161.0km) | 161.0km |
| | | Tour de Yorkshire (2.1) |
| 78 | | Klassement |
| 03-05 | 111 | 78 | Stage 3Wakefield - Leeds (167.0km) | 167.0km |
| 02-05 | 121 | 68 | Stage 2Selby - York (174.0km) | 174.0km |
| 01-05 | 48 | 50 | Stage 1Bridlington - Scarborough (174.0km) | 174.0km |
| 19-04 | DNF | | Tro-Bro Léon (1.1) | |
| 18-04 | DNF | | Tour du Finistère (1.1) | 189.0km |
| 12-04 | 40 | | Paris-Roubaix (WT) | 253.0km |
| 08-04 | 143 | | Scheldeprijs (1.HC) | 200.0km |
| 05-04 | DNF | | Ronde van Vlaanderen (WT) | 264.0km |
| | | Driedaagse De Panne-Koksijde (2.HC) |
| 21 | | Klassement |
| 02-04 | 29 | 21 | Stage 3bDe Panne - De Panne (14.0km) | 14.0km |
| 02-04 | 68 | 30 | Stage 3aDe Panne - De Panne (111.0km) | 111.0km |
| 01-04 | 61 | 33 | Stage 2Zottegem - Koksijde (217.0km) | 217.0km |
| 31-03 | 15 | 15 | Stage 1De Panne - Zottegem (201.0km) | 201.0km |
| 29-03 | DNF | | Gent - Wevelgem (WT) | 240.0km |
| 27-03 | 35 | | E3 Harelbeke (WT) | 215.0km |
| 25-03 | DNF | | Dwars door Vlaanderen (1.HC) | 200.0km |
| | | Tirreno-Adriatico (WT) |
| 119 | | Klassement |
| 17-03 | | 119 | Stage 7San Benedetto del Tronto - San Benedetto del Tronto (10.0km) | 10.0km |
| 16-03 | 106 | 120 | Stage 6Rieti - Porto Sant'Elpidio (210.0km) | 210.0km |
| 15-03 | 119 | 116 | Stage 5Esanatoglia - Monte Terminillo (194.0km) | 194.0km |
| 14-03 | 150 | 120 | Stage 4Indicatore - Castelraimondo (218.0km) | 218.0km |
| 13-03 | 94 | 103 | Stage 3Cascina - Arezzo (203.0km) | 203.0km |
| 12-03 | 72 | 118 | Stage 2Camaiore - Cascina (153.0km) | 153.0km |
| 11-03 | 135 | 135 | Stage 1Lido di Camaiore - Lido di Camaiore (5.0km) | 5.0km |
| 01-03 | DNF | | Kuurne-Brussel-Kuurne (1.1) | 195.0km |
| 28-02 | 75 | | Omloop Het Nieuwsblad Elite (1.HC) | 200.0km |
| | | Tour Cycliste Int. du Haut Var (2.1) |
| 22-02 | DNF | | Stage 2Draguignan - Draguignan (194.0km) | 194.0km |
| 21-02 | 59 | 59 | Stage 1Le Cannet des Maures - Seillans (170.0km) | 170.0km |
| 19-02 | DNF | | Trofeo Laigueglia (1.1) | 191.0km |
| | | Etoile de Bessèges (2.1) |
| 96 | | Klassement |
| 08-02 | 57 | 96 | Stage 5Alès - Alès (12.0km) | 12.0km |
| 07-02 | 98 | 104 | Stage 4Laudun-l'Ardoise - Laudun-l'Ardoise (156.0km) | 156.0km |
| 06-02 | 133 | 113 | Stage 3Bessèges - Bessèges (153.0km) | 153.0km |
| 05-02 | 5 | 97 | Stage 2Nîmes - Les Fumades (155.0km) | 155.0km |
| 04-02 | 110 | 111 | Stage 1Bellegarde - Beaucaire (152.0km) | 152.0km |
| 31-01 | DNF | | Trofeo Serra de Tramuntana (1.1) | 165.0km |
| 30-01 | DNF | | Trofeo Alcudia-Platja de Muro (1.1) | 149.0km |
| 29-01 | 63 | | Trofeo Santanyi-SesSalines-Campos (1.1) | 175.0km |