| | | La Mi-Août en Bretagne (2.2) |
| 12-08 | DNF | | Stage 2Pont Scor - Cléguer (165.0km) | 165.0km |
| 11-08 | 17 | 17 | Stage 1Plouëc-du-Trieux - Pontrieux (171.0km) | 171.0km |
| | | Kreiz Breizh Elites (2.2) |
| 26 | | Klassement |
| 25-07 | 39 | 26 | Stage 4Carhaix - Rostrenen (169.0km) | 169.0km |
| 24-07 | 49 | 21 | Stage 3Plouguernével - Ploërdut (102.0km) | 102.0km |
| 24-07 | 20 | 23 | Stage 2Cleden-Poher - Carhaix (96.0km) | 96.0km |
| 23-07 | 23 | 23 | Stage 1Calanhel - Plouray (174.0km) | 174.0km |
| | | Boucles de la Mayenne (2.2) |
| 31 | | Klassement |
| 19-06 | 53 | 31 | Stage 3Renazé - Laval (172.0km) | 172.0km |
| 18-06 | 63 | 30 | Stage 2Saint-Denis-du-Maine - Évron (84.0km) | 84.0km |
| 17-06 | 71 | 31 | Stage 1Saint-Berthevin - Sainte-Suzanne (180.0km) | 180.0km |
| 16-06 | 35 | 35 | PrologueLaval - Laval (4.0km) | 4.0km |
| 12-06 | 8 | | Val d'Ille U Classic 35 (1.2) | 185.0km |
| 29-05 | 52 | | Boucles de l'Aulne (1.1) | |
| | | Circuit de Lorraine Professionnel (2.1) |
| 14 | | Klassement |
| 22-05 | 19 | 14 | Stage 5Metz - Hayange (149.0km) | 149.0km |
| 21-05 | 20 | 15 | Stage 4Baccarat - Rehlingen-Siersburg (175.0km) | 175.0km |
| 20-05 | 14 | 15 | Stage 3Château-Salins - Saint-Dié-des-Vosges (206.0km) | 206.0km |
| 19-05 | 6 | 17 | Stage 2Briey - Commercy (168.0km) | 168.0km |
| 18-05 | 39 | 40 | Stage 1Amnéville - Longwy (166.0km) | 166.0km |
| | | Tour de Picardie (2.1) |
| 16 | | Klassement |
| 2 | | Berg |
| 15-05 | 43 | 16 | Stage 3Charly-sur-Marne - Péronne (189.0km) | 189.0km |
| 14-05 | 28 | 16 | Stage 2Villers-Saint-Paul - Château-Thierry (166.0km) | 166.0km |
| 13-05 | 22 | 23 | Stage 1Abbeville - La Neuville-en-Hez (162.0km) | 162.0km |
| | | Le Tour de Bretagne Cycliste (2.2) |
| 10 | | Klassement |
| 01-05 | 31 | 10 | Stage 7Hémonstoir - Loudéac (151.0km) | 151.0km |
| 30-04 | 26 | 9 | Stage 6Morlaix - Plaintel (155.0km) | 155.0km |
| 29-04 | 15 | 7 | Stage 5Fouesnant - Morlaix (175.0km) | 175.0km |
| 28-04 | 54 | 9 | Stage 4Saint Avé - Fouesnant (158.0km) | 158.0km |
| 27-04 | 3 | 8 | Stage 3Guérande - Saint Avé (151.0km) | 151.0km |
| 26-04 | 29 | 37 | Stage 2Rennes - Guérande (193.0km) | 193.0km |
| 25-04 | 50 | 56 | Stage 1Argentré du Plessis - Argentré du Plessis (150.0km) | 150.0km |
| 14-04 | 51 | | GP de Denain Porte du Hainaut (1.1) | 199.0km |
| 10-04 | 101 | | Paris-Roubaix (HIS) | 259.0km |
| 03-04 | 42 | | Flèche d'Emeraude - Saint Malo (1.1) | 182.0km |
| | | Tour de Normandie (2.2) |
| 7 | | Klassement |
| 27-03 | 49 | 7 | Stage 7Bagnoles de l'Orne - Caen (143.0km) | 143.0km |
| 26-03 | 3 | 7 | Stage 6Gouville-sur-Mer - Bagnoles de l'Orne (172.0km) | 172.0km |
| 25-03 | 33 | 32 | Stage 5Domfront - Agon-Coutainville (168.0km) | 168.0km |
| 24-03 | 38 | 38 | Stage 4Elbeuf - Flers (188.0km) | 188.0km |
| 23-03 | 30 | 41 | Stage 3Grand-Couronne - Elbeuf (72.0km) | 72.0km |
| 23-03 | 34 | 43 | Stage 2Forges-les-Eaux - Grand-Couronne (84.0km) | 84.0km |
| 22-03 | 44 | 101 | Stage 1Colombelles - Forges-les-Eaux (198.0km) | 198.0km |
| 21-03 | 105 | 105 | PrologueMondeville - Mondeville (4.0km) | 4.0km |
| 19-03 | 39 | | Classic Loire Atlantique (1.1) | 184.0km |
| 13-03 | 82 | | Paris-Troyes (1.2) | 172.0km |
| 06-03 | 35 | | Grand Prix de la Ville de Lillers Souvenir Bruno Comini (1.2) | 171.0km |
| | | Etoile de Bessèges (2.1) |
| 62 | | Klassement |
| 06-02 | 78 | 62 | Stage 5Gagnières - Bessèges (145.0km) | 145.0km |
| 05-02 | 64 | 64 | Stage 4Alès - Alès (152.0km) | 152.0km |
| 04-02 | 74 | 83 | Stage 3Saint-Victor-la-Coste - Laudun-l'Ardoise (152.0km) | 152.0km |
| 03-02 | 51 | 92 | Stage 2Nîmes - Saint-Ambroix (149.0km) | 149.0km |
| 02-02 | 91 | 92 | Stage 1Beaucaire - Bellegarde (153.0km) | 153.0km |
| 09-01 | 43 | | French National Championships CX (CN) | |