| 14-10 | 2 | | Youth Olympic Games (OS) | |
| 27-09 | DNF | | UCI World Championship Innsbruck U19 (CM) | 138.0km |
| 25-09 | 31 | | UCI World Championship Innsbruck TT U19 (CM) | 28.0km |
| | | Grand Prix Róebliland (2.1) |
| 7 | | Standings |
| 02-09 | 36 | 7 | Stage 4Steinmaur - Steinmaur | 114.0km |
| 01-09 | 6 | 8 | Stage 3Möhlin - Möhlin | 9.0km |
| 01-09 | 45 | 25 | Stage 2Möhlin - Möhlin | 83.0km |
| 31-08 | 15 | 19 | Stage 1Wittnau - Wittnau | 93.0km |
| | | Ronde des Vallées (2.1) |
| 12-08 | 5 | | Stage 2Saint-Caradec - Hémonstoir | 11.0km |
| 12-08 | 18 | 18 | Stage 3Hémonstoir - Hémonstoir | |
| 11-08 | 42 | | Stage 1Allineuc - Allineuc | |
| 21-07 | 1 | | Luxembourg National Championships - XCO U19 (CN) | |
| 15-07 | 33 | | UEC Road European Championships U19 (CC) | 118.0km |
| 13-07 | 30 | | UEC Road European Championships TT U19 (CC) | 24.0km |
| | | GP Général Patton (2.NCUP) |
| 16 | | Standings |
| 8 | | Points |
| 08-07 | 23 | 16 | Stage 2Munshausen - Munshausen | 93.0km |
| 07-07 | 5 | | Stage 1Ettelbrück - Troisvierges | 102.0km |
| 01-07 | 2 | | National Road Championships - Luxembourg U19 (CN) | 23.0km |
| 28-06 | 1 | | National Road Championships - Luxembourg TT U19 (CN) | |
| | | 31. Trofeo (2.NCUP) |
| 26 | | Standings |
| 17 | | Mountain |
| 10-06 | 64 | 26 | Stage 4Niedergailbach - Bliesdalheim | 120.0km |
| 09-06 | 59 | 59 | Stage 3aHomburg - Homburg | 79.0km |
| 09-06 | 35 | 28 | Stage 3bMedelsheim - Medelsheim | 13.0km |
| 08-06 | 61 | 41 | Stage 2Ommersheim - Altheim | 99.0km |
| 07-06 | 84 | 84 | Stage 1Neunkirchen - Münchwies | 110.0km |
| | | Tour du Pays de Vaud (2.NCUP) |
| 21 | | Standings |
| 27-05 | 23 | 21 | Stage 4Cossonay - Tartegnin | 113.0km |
| 26-05 | 6 | 29 | Stage 3aCully - Savigny | 78.0km |
| 26-05 | 9 | | Stage 3bSavigny - Savigny | 10.0km |
| 25-05 | 52 | 44 | Stage 2Missy - Bioley-Magnoux | 120.0km |
| 24-05 | 55 | 55 | Stage 1Lausanne - Lausanne | 4.0km |
| | | Course de la Paix Juniors (2.NCUP) |
| 30 | | Standings |
| 06-05 | 26 | 30 | Stage 4Benesov nad Ploucnici - Terezín | 97.0km |
| 05-05 | 36 | 34 | Stage 3Teplice - Altenberg | 96.0km |
| 04-05 | 17 | 56 | Stage 2aTrebenice - Trebenice | 11.0km |
| 04-05 | 59 | 55 | Stage 2bRoudnice nad Labem - Roudnice nad Labem | 62.0km |
| 03-05 | 61 | 61 | Stage 1Litomerice - Litomerice | 102.0km |
| | | 5éme Tour des Portes du Pays d'Othe (2.1) |
| 22 | | Standings |
| 7 | | Mountain |
| 29-04 | 76 | 22 | Stage 2bEstissac - Estissac | 90.0km |
| 29-04 | 23 | 22 | Stage 2aEstissac - Estissac | 16.0km |
| 28-04 | 42 | 42 | Stage 1Romilly-s-Seine - Estissac | 93.0km |
| 01-04 | 22 | | Grand Prix Bob Jungels (1.1) | |
| 25-03 | 18 | | Gent-Wevelgem/Grote Prijs A. Noyelle-Ieper (1.NCUP) | |
| 03-02 | 18 | | UCI Cyclo-cross World Championships Valkenburg U19 (CM) | |
| 28-01 | 14 | | Telenet UCI Cyclo-cross World Cup Hoogerheide U19 (CDM) | |
| 21-01 | 1 | | Grand Prix Möbel Alvisse (C2) | |
| 13-01 | 2 | | Luxemburg National Championships Cyclo-Cross U19 (CN) | |
| 01-01 | 2 | | Grand Prix G.I.L. Immobilière (C2) | |