| 1 | | 22 | Singer KTM Racing | 01:15:43 |
| 2 | | 21 | BH-Wallonie MTB Team | + 17 |
| 3 | | 20 | | + 36 |
| 4 | | 20 | Cube Factory Racing | + 01:01 |
| 5 | | 20 | Singer KTM Racing | + 01:26 |
| 6 | | 20 | | + 01:47 |
| 7 | | 21 | | + 02:06 |
| 8 | | 22 | AS Bike Racing / France Literie | + 02:42 |
| 9 | | 18 | Decathlon Ford Racing Team | + 02:57 |
| 10 | | 19 | Lexware Mountainbike Team | + 03:37 |
| 11 | | 19 | | + 03:59 |
| 12 | | 19 | | + 04:11 |
| 13 | | 18 | | + 04:15 |
| 14 | | 18 | INEOS Grenadiers Racing Academy | " |
| 15 | | 19 | BH-Wallonie MTB Team | + 04:25 |
| 16 | | 18 | | + 04:33 |
| 17 | | 21 | | + 04:46 |
| 18 | | 19 | | + 05:03 |
| 19 | | 21 | | + 05:22 |
| 20 | | 20 | | + 05:39 |
| 21 | | 18 | | + 06:03 |
| 22 | | 21 | Thömus Akros - Youngstars | + 06:36 |
| 23 | | 18 | Scott Creuse Oxygene Gueret | + 06:39 |
| 24 | | 20 | | + 07:08 |
| 25 | | 19 | Team Brennan | + 07:21 |
| 26 | | 18 | | + 07:28 |
| 27 | | 19 | | + 07:43 |
| 28 | | 19 | | + 08:05 |
| 29 | | 18 | | + 08:22 |
| 30 | | 22 | | + 08:24 |
| 31 | | 20 | | + 09:08 |
| 32 | | 19 | | + 09:30 |
| 33 | | 21 | | + 10:49 |
| 34 | | 19 | | + 10:54 |
| 35 | | 19 | | + 11:51 |
| 36 | | 20 | | + 12:41 |
| LAP | | 19 | | |
| LAP | | 20 | | |
| LAP | | 19 | Thömus Akros - Youngstars | |
| LAP | | 19 | | |
| LAP | | 33 | | |
| LAP | | 18 | | |
| LAP | | 20 | | |
| LAP | | 22 | | |
| LAP | | 20 | | |
| DNF | | 18 | | |
| DNF | | 21 | KMC Nukeproof MTB Racing Team | |
| DNF | | 21 | | |
| DNF | | 19 | | |
| DNF | | 20 | | |