| 24-11 | 19 | | Coupe de France de Cyclo-Cross #6 - Troyes (C2) | |
| 23-11 | 17 | | Coupe de France de Cyclo-Cross #5 - Troyes (C2) | |
| 20-10 | 7 | | Coupe de France de Cyclo-Cross #2 - Nommay (C2) | |
| 19-10 | 8 | | Coupe de France de Cyclo-Cross #1 - Nommay (C2) | |
| 06-10 | 25 | | Paris - Tours Elite (1.Pro) | 213.0km |
| 01-10 | 119 | | Binche - Chimay - Binche / Mémorial Frank Vandenbroucke (1.1) | 198.0km |
| | | Tour d'Eure-et-Loir (2.2) |
| 3 | | Klassement |
| 7 | | Punten |
| 10 | | Berg |
| 29-09 | 21 | 3 | Stage 3Vernouillet - Chartres (188.0km) | 188.0km |
| 28-09 | 33 | 3 | Stage 2Les Villages Vovéens - Vald'Yerre (196.0km) | 196.0km |
| 27-09 | 3 | 3 | Stage 1Le Coudray - Mignières (146.0km) | 146.0km |
| 22-09 | 85 | | Paris-Chauny (1.1) | 197.0km |
| 08-09 | 102 | | GP de Fourmies / La Voix du Nord (1.Pro) | 197.0km |
| | | Tour of Hainan (2.Pro) |
| 12 | | Klassement |
| 44 | | Punten |
| 14 | | Berg |
| 31-08 | 27 | 12 | Stage 5Changjiang - Changjiang (203.0km) | 203.0km |
| 30-08 | 25 | 14 | Stage 4Wuzhishan - Changjiang (151.0km) | 151.0km |
| 29-08 | 16 | 14 | Stage 3Lingshui - Wuzhishan (181.0km) | 181.0km |
| 28-08 | 99 | 58 | Stage 2Qionghai - Lingshui (178.0km) | 178.0km |
| 27-08 | 26 | 28 | Stage 1Qionghai - Qionghai (95.0km) | 95.0km |
| | | Tour du Limousin (2.1) |
| 24 | | Klassement |
| 8 | | Jongeren |
| 20 | | Berg |
| 16-08 | 46 | 24 | Stage 4Oradour-sur-Glane - Limoges (161.0km) | 161.0km |
| 15-08 | 24 | 18 | Stage 3Mansac - Argentat (189.0km) | 189.0km |
| 14-08 | 18 | 23 | Stage 2 Saint-Aulaye-Puymangou - Terrasson-Lavilledieu (193.0km) | 193.0km |
| 13-08 | 25 | 29 | Stage 1Boisseuil - Auzances (174.0km) | 174.0km |
| 11-08 | DNF | | La Polynormande (1.1) | 168.0km |
| | | Tour Alsace (2.2) |
| 1 | | Klassement |
| 16 | | Punten |
| 8 | | Berg |
| 28-07 | 54 | 1 | Stage 5Rust (Europapark) - Selestat (166.0km) | 166.0km |
| 27-07 | 12 | 1 | Stage 4L'Isle-sur-le-Doubs - Valentigney (176.0km) | 176.0km |
| 26-07 | 14 | 10 | Stage 3Vesoul - La Planche des Belles Filles (132.0km) | 132.0km |
| 25-07 | 6 | 4 | Stage 2Riedisheim - Ferrette (154.0km) | 154.0km |
| 24-07 | | 7 | Stage 1Sausheim - Sausheim (4.0km) | 4.0km |
| | | Tour de l'Ain (2.1) |
| 17 | | Klassement |
| 29 | | Punten |
| 15-07 | 16 | 17 | Stage 3Lagnieu - L'Île Chambod (153.0km) | 153.0km |
| 14-07 | 15 | 16 | Stage 2Saint-Vulbas - Lélex Monts-Jura (145.0km) | 145.0km |
| 13-07 | 30 | 31 | Stage 1Laiz - Bourg-en-Bresse (132.0km) | 132.0km |
| 06-07 | 15 | | Gravel Suisse (National) | |
| 23-06 | 32 | | National Road Championships - France (CN) | 240.0km |
| 16-05 | DNF | | Mercan'Tour Classic Alpes-Maritimes (1.1) | 168.0km |
| | | Boucles de la Mayenne - Crédit Mutuel (2.Pro) |
| 23 | | Klassement |
| 26-05 | 43 | 23 | Stage 3Quelaines-Saint-Gault - Laval (169.0km) | 169.0km |
| 25-05 | 21 | 24 | Stage 2Le Ham - Villaines-la-Juhel (208.0km) | 208.0km |
| 23-05 | 59 | 59 | PrologueLaval - Laval (5.0km) | 5.0km |
| | | 4 Jours de Dunkerque (2.Pro) |
| 28 | | Klassement |
| 38 | | Punten |
| 15 | | Berg |
| 14 | | Jongeren |
| 19-05 | 51 | 28 | Stage 6Loon-Plage - Dunkerque (176.0km) | 176.0km |
| 18-05 | 26 | 29 | Stage 5Arques - Cassel (179.0km) | 179.0km |
| 17-05 | 49 | 47 | Stage 4Mazingarbe - Pont-à-Marcq (171.0km) | 171.0km |
| 16-05 | 86 | 62 | Stage 3Saint-Laurent-Blangy - Bouchain (165.0km) | 165.0km |
| 15-05 | 74 | 62 | Stage 2Wimereux - Abbeville (184.0km) | 184.0km |
| 14-05 | 65 | 62 | Stage 1Dunkerque - Le Touquet-Paris-Plage (173.0km) | 173.0km |
| 12-05 | 14 | | Boucles de l'Aulne - Châteaulin (1.1) | 181.0km |
| 11-05 | 46 | | Tour du Finistère (1.1) | 199.0km |
| 05-05 | 56 | | Tro-Bro Léon (1.Pro) | 203.0km |
| 04-05 | 27 | | Grand Prix du Morbihan (1.Pro) | 196.0km |
| 14-04 | 19 | | Tour du Doubs (1.1) | 200.0km |
| 13-04 | 28 | | Tour du Jura Cycliste (1.1) | |
| 12-04 | 19 | | Classic Grand Besançon Doubs (1.1) | 171.0km |
| | | Région Pays de la Loire Tour (2.1) |
| 40 | | Klassement |
| 05-04 | 42 | 40 | Stage 4Marolles-les-Braults - Le Mans (174.0km) | 174.0km |
| 04-04 | 59 | 49 | Stage 3Segré-en-Anjou Bleu - Château-Gontier (159.0km) | 159.0km |
| 03-04 | 41 | 50 | Stage 2Chateaubriant - Saumur (162.0km) | 162.0km |
| 02-04 | 80 | 80 | Stage 1Fontenay-le-Comte - Saint-Jean-de-Monts (210.0km) | 210.0km |
| 27-03 | 8 | | Paris - Camembert (1.1) | 205.0km |
| 24-03 | 36 | | La Roue Tourangelle (1.1) | 200.0km |
| 14-03 | 36 | | Grand Prix de Denain - Porte du Hainaut (1.Pro) | 196.0km |
| 03-03 | 63 | | Grand Prix de la Ville de Lillers Souvenir Bruno Comini (1.2) | |
| 02-03 | 20 | | Le Tour des 100 Communes (1.2) | |
| 27-02 | 71 | | Le Samyn (1.1) | 202.0km |
| | | Tour des Alpes-Maritimes (2.1) |
| 26 | | Klassement |
| 18-02 | 25 | 26 | Stage 2Villefranche-sur-Mer - Vence (131.0km) | 131.0km |
| 17-02 | 47 | 47 | Stage 1Levens - Antibes (165.0km) | 165.0km |
| 16-02 | 22 | | Classic Var (1.1) | 184.0km |
| | | Tour de la Provence (2.1) |
| 43 | | Klassement |
| 11-02 | 13 | 43 | Stage 3Rognac - Arles (183.0km) | 183.0km |
| 10-02 | 46 | 78 | Stage 2Forcalquier - Manosque (165.0km) | 165.0km |
| 09-02 | 104 | 94 | Stage 1Aix-en-Provence - Manosque (157.0km) | 157.0km |
| 08-02 | 59 | 59 | PrologueMarseille - Marseille (5.0km) | 5.0km |
| | | Étoile de Bessèges (2.1) |
| 37 | | Klassement |
| 04-02 | 71 | 37 | Stage 5Alès - Alès (10.0km) | 10.0km |
| 03-02 | 31 | 35 | Stage 4Méjannes le Clap - Méjannes le Clap (158.0km) | 158.0km |
| 02-02 | 60 | 39 | Stage 3Bessèges - Bessèges (161.0km) | 161.0km |
| 01-02 | 42 | 42 | Stage 2Marguerittes - Rousson (163.0km) | 163.0km |
| 28-01 | 70 | | Grand Prix Cycliste de Marseille La Marseillaise (1.1) | 167.0km |
| 14-01 | 17 | | French National Championships CX (CN) | |