| 22-09 | 102 | | UCI World Championship Limburg U23 (CM) | 161.0km |
| 17-09 | 12 | | UCI World Championship Limburg TT U23 (CM) | 36.0km |
| 09-09 | 7 | | Chrono Champenois Masculin International (1.2) | |
| | | Tour de l'Avenir (2.NCUP) |
| 25 | | Klassement |
| 01-09 | 5 | 25 | Stage 6Beaufort - Le Grand-Bornand (82.0km) | 82.0km |
| 31-08 | 35 | 39 | Stage 5Valloire - Le Saisies (130.0km) | 130.0km |
| 30-08 | 60 | 48 | Stage 4Seyssel - Valloire (155.0km) | 155.0km |
| 29-08 | 3 | 5 | Stage 3Pont-d'Ain - Annemasse (152.0km) | 152.0km |
| 28-08 | 66 | 15 | Stage 2Parc des Oiseaux - Chatillon-sur-Chalaronne (139.0km) | 139.0km |
| 27-08 | 67 | 15 | Stage 1Dôle - Belleville (172.0km) | 172.0km |
| 26-08 | 12 | 12 | PrologueDôle - Dôle (3.0km) | 3.0km |
| 23-08 | 56 | | GP Industria Commercio Artigianato Carnaghese (1.1) | 200.0km |
| 12-08 | 93 | | European Championship U23 (EC) | 172.0km |
| 10-08 | 2 | | European Championship TT U23 (EC) | 25.0km |
| 05-08 | 96 | | Antwerpse Havenpijl (1.2) | |
| | | Giro Ciclistico della Valle d'Aosta Mont Blanc (2.2U) |
| 21-07 | DNF | | Stage 5Aigle - Châtel (142.0km) | 142.0km |
| 20-07 | 1 | 17 | Stage 4Antey-Saint-André - Antey-Saint-André (166.0km) | 166.0km |
| 19-07 | 14 | 45 | Stage 3Quincinetto - Tavagnasco (138.0km) | 138.0km |
| 18-07 | 87 | 71 | Stage 2Issogne - Champdepraz (160.0km) | 160.0km |
| 17-07 | 63 | 35 | Stage 1Arvier - Arvier (133.0km) | 133.0km |
| 16-07 | 2 | 2 | PrologueHône - Forte di Bard (3.0km) | 3.0km |
| 24-06 | 5 | | National Road Championships - Luxembourg (CN) | |
| 21-06 | 1 | | National Road Championships - Luxembourg TT (CN) | |
| | | Skoda-Tour de Luxembourg (2.HC) |
| 9 | | Klassement |
| 03-06 | 15 | 9 | Stage 4Mersch - Luxembourg (153.0km) | 153.0km |
| 02-06 | 22 | 9 | Stage 3Eschweiler - Differdange (205.0km) | 205.0km |
| 01-06 | 73 | 22 | Stage 2Schifflange - Leudelange (183.0km) | 183.0km |
| 31-05 | 93 | 22 | Stage 1Luxembourg - Hesperange (181.0km) | 181.0km |
| 30-05 | 23 | 23 | PrologueLuxembourg - Luxembourg (2.0km) | 2.0km |
| 27-05 | 1 | | Paris-Roubaix Espoirs (1.2U) | 179.0km |
| | | Flèche du Sud (2.2) |
| 1 | | Klassement |
| 20-05 | 40 | 1 | Stage 5Belvaux - Esch-sur-Alzette (181.0km) | 181.0km |
| 19-05 | 1 | 1 | Stage 4Tétange - Rumelange (14.0km) | 14.0km |
| 18-05 | 6 | 4 | Stage 3Tandel - Wiltz (154.0km) | 154.0km |
| 17-05 | 70 | 9 | Stage 2Schifflange - Roeser (166.0km) | 166.0km |
| 16-05 | 10 | 10 | Stage 1Differdange - Differdange (81.0km) | 81.0km |
| | | Giro della Regione Friuli Venezia Giulia (2.2) |
| 2 | | Klassement |
| 06-05 | 9 | 2 | Stage 5San Daniele del Friuli - Moruzzo (149.0km) | 149.0km |
| 05-05 | 9 | 2 | Stage 4Tolmezzo - Tarvisio (172.0km) | 172.0km |
| 04-05 | 7 | 2 | Stage 3Maniago - Potebba Passo Pramollo (149.0km) | 149.0km |
| 03-05 | 24 | 20 | Stage 2Azzano Decimo - Pordenone (164.0km) | 164.0km |
| 02-05 | 72 | 72 | Stage 1Trieste - Gorizia (158.0km) | 158.0km |
| | | Toscana-Terra di ciclismo-Coppa delle Nazioni (2.NCUP) |
| 8 | | Klassement |
| 21-04 | 11 | 8 | Stage 5Greve in Chianti - Bonconvento | |
| 20-04 | 11 | 9 | Stage 4Cortona - Terranova Bracciolini | |
| 19-04 | 8 | 9 | Stage 3Cavriglia - Parco di Cavriglia | |
| 18-04 | 32 | 24 | Stage 2Figlile Valdarno - Gaiole in Chianti | |
| 17-04 | 31 | 31 | Stage 1Camping Girasole - Scarperia | |
| 11-04 | 2 | | La Côte Picarde (1.NCUP) | |
| 07-04 | 45 | | Ronde van Vlaanderen Beloften (1.NCUP) | 173.0km |
| | | Le Triptyque des Monts et Châteaux (2.2) |
| 1 | | Klassement |
| 01-04 | 11 | 1 | Stage 4Bel?il - Tournai (162.0km) | 162.0km |
| 31-03 | 76 | 2 | Stage 3Mont-de-l'Enclus - Vieux-Condé (85.0km) | 85.0km |
| 31-03 | 6 | 1 | Stage 2Mont-de-l'Enclus - Mont-de-l'Enclus (9.0km) | 9.0km |
| 30-03 | 2 | 2 | Stage 1Château d'Estaimbourg - Quevaucamps (179.0km) | 179.0km |
| | | Tour de Normandie (2.2) |
| 32 | | Klassement |
| 25-03 | 108 | 32 | Stage 8Bagnoles de l'Orne - Caen (135.0km) | 135.0km |
| 24-03 | 48 | 32 | Stage 7Brécey - Bagnoles de l'Orne (153.0km) | 153.0km |
| 23-03 | 45 | 34 | Stage 6Domfront - Villers-Bocage (156.0km) | 156.0km |
| 22-03 | 83 | 41 | Stage 5Elbeuf - Flers (190.0km) | 190.0km |
| 21-03 | 52 | 49 | Stage 4Aubevoye - Elbeuf (100.0km) | 100.0km |
| 21-03 | 76 | 52 | Stage 3Forges-les-Eaux - Gaillon (61.0km) | 61.0km |
| 20-03 | 43 | 51 | Stage 2Colombelles - Forges-les-Eaux (200.0km) | 200.0km |
| 19-03 | 55 | 55 | Stage 1Saint-Lô - Saint-Lô (3.0km) | 3.0km |
| 16-03 | 109 | | Handzame Classic (1.1) | 195.0km |
| 14-03 | 102 | | Nokere-Koerse (1.1) | 196.0km |
| 04-03 | 36 | | Grand Prix de la Ville de Lillers Souvenir Bruno Comini (1.2) | 171.0km |
| 03-03 | 12 | | De Vlaamse Pijl - Stannah (1.2) | 157.0km |
| 26-02 | 21 | | Les Boucles du Sud Ardèche - Souvenir Francis Delpech (1.1) | 199.0km |
| 18-02 | 98 | | Trofeo Laigueglia (1.1) | 196.0km |
| 04-02 | 92 | | G.P. Costa degli Etruschi (1.1) | 194.0km |