| 1 | - | | 20 | Lidl-Trek Future Racing | 28:01:25 |
| 2 | - | | 28 | St Michel - Mavic - Auber93 | + 34 |
| 3 | - | | 20 | Team Visma | Lease a Bike Development | + 37 |
| 4 | (2) | | 18 | Soudal - Quick-Step Devo Team | + 45 |
| 5 | - | | 20 | Uno-X Mobility Development Team | + 50 |
| 6 | (2) | | 31 | ATT Investments | + 53 |
| 7 | - | | 20 | CIC - U - Nantes Atlantique | + 57 |
| 8 | - | | 18 | Soudal - Quick-Step Devo Team | + 01:19 |
| 9 | (4) | | 21 | Decathlon AG2R La Mondiale Development | + 01:38 |
| 10 | (1) | | 22 | Alpecin-Deceuninck Development Team | + 01:44 |
| 11 | (4) | | 19 | Team Visma | Lease a Bike Development | + 01:48 |
| 12 | (5) | | 19 | Arkéa - B&B Hôtels Continentale | + 01:50 |
| 13 | (3) | | 23 | Team ColoQuick | + 01:56 |
| 14 | (8) | | 31 | Philippe Wagner / Bazin | + 02:12 |
| 15 | (8) | | 22 | Team Visma | Lease a Bike Development | + 02:14 |
| 16 | (4) | | 24 | Morbihan Adris Gwendal Oliveux | " |
| 17 | (4) | | 18 | Lotto Dstny Development Team | + 02:17 |
| 18 | (8) | | 25 | St Michel - Mavic - Auber93 | + 02:20 |
| 19 | - | | 22 | Astana Qazaqstan Development Team | + 02:22 |
| 20 | (8) | | 19 | Groupama - FDJ CT | + 02:24 |
| 21 | (6) | | 19 | Development Team DSM-Firmenich - PostNL | + 02:33 |
| 22 | (11) | | 19 | Decathlon AG2R La Mondiale Development | + 02:35 |
| 23 | (12) | | 21 | Soudal - Quick-Step Devo Team | + 02:37 |
| 24 | (12) | | 27 | CIC - U - Nantes Atlantique | " |
| 25 | (12) | | 19 | Arkéa - B&B Hôtels Continentale | " |
| 26 | (16) | | 22 | Dinan Sport Cycling | " |
| 27 | (20) | | 20 | Wanty-Re Uz-Technord | " |
| 28 | (4) | | 21 | Lidl-Trek Future Racing | + 02:52 |
| 29 | (11) | | 25 | Morbihan Adris Gwendal Oliveux | + 02:53 |
| 30 | (9) | | 21 | ARA | Skip Capital | + 02:55 |
| 31 | (1) | | 20 | Uno-X Mobility Development Team | + 02:57 |
| 32 | (2) | | 20 | Team Visma | Lease a Bike Development | + 03:05 |
| 33 | (2) | | 25 | Arkéa - B&B Hôtels Continentale | + 03:12 |
| 34 | (2) | | 20 | Groupama - FDJ CT | + 03:37 |
| 35 | (10) | | 18 | Decathlon AG2R La Mondiale Development | + 03:39 |
| 36 | (10) | | 20 | Alpecin-Deceuninck Development Team | + 03:45 |
| 37 | (9) | | 23 | Team ColoQuick | " |
| 38 | (24) | | 30 | Morbihan Adris Gwendal Oliveux | + 03:47 |
| 39 | (10) | | 19 | Uno-X Mobility Development Team | + 04:18 |
| 40 | (3) | | 18 | Decathlon AG2R La Mondiale Development | + 04:23 |
| 41 | (11) | | 18 | Trinity Racing | + 04:27 |
| 42 | (17) | | 20 | Q36.5 Continental Cycling Team | + 04:33 |
| 43 | (5) | | 24 | St Michel - Mavic - Auber93 | + 04:44 |
| 44 | (7) | | 22 | Trinity Racing | + 05:06 |
| 45 | (5) | | 28 | ATT Investments | + 05:25 |
| 46 | (10) | | 19 | Hagens Berman Jayco | + 05:42 |
| 47 | (6) | | 22 | Uno-X Mobility Development Team | + 05:45 |
| 48 | (9) | | 22 | Alpecin-Deceuninck Development Team | + 06:02 |
| 49 | (6) | | 20 | Lotto Dstny Development Team | + 06:05 |
| 50 | (41) | | 23 | Uno-X Mobility Development Team | + 06:39 |
| 51 | (1) | | 19 | CIC - U - Nantes Atlantique | + 06:41 |
| 52 | (14) | | 21 | VC Pays de Loudéac | + 06:53 |
| 53 | (41) | | 21 | Development Team DSM-Firmenich - PostNL | + 07:28 |
| 54 | (5) | | 19 | Astana Qazaqstan Development Team | + 07:57 |
| 55 | (3) | | 21 | Astana Qazaqstan Development Team | + 08:03 |
| 56 | (8) | | 18 | Uno-X Mobility Development Team | + 08:36 |
| 57 | (2) | | 21 | CIC - U - Nantes Atlantique | + 08:50 |
| 58 | (3) | | 19 | Development Team DSM-Firmenich - PostNL | + 09:12 |
| 59 | (6) | | 25 | St Michel - Mavic - Auber93 | + 09:25 |
| 60 | (6) | | 20 | Soudal - Quick-Step Devo Team | + 09:46 |
| 61 | (1) | | 20 | Groupama - FDJ CT | + 10:30 |
| 62 | (5) | | 19 | ARA | Skip Capital | + 11:22 |
| 63 | (3) | | 18 | Soudal - Quick-Step Devo Team | + 11:37 |
| 64 | (2) | | 26 | Alpecin-Deceuninck Development Team | + 13:40 |
| 65 | - | | 19 | Groupama - FDJ CT | + 14:14 |
| 66 | (5) | | 19 | Soudal - Quick-Step Devo Team | + 15:50 |
| 67 | (1) | | 25 | ATT Investments | + 15:56 |
| 68 | (2) | | 23 | Decathlon AG2R La Mondiale Development | + 16:17 |
| 69 | (6) | | 24 | ATT Investments | + 16:29 |
| 70 | (7) | | 21 | Q36.5 Continental Cycling Team | + 17:31 |
| 71 | (1) | | 21 | VC Pays de Loudéac | + 18:34 |
| 72 | (4) | | 19 | Lidl-Trek Future Racing | + 19:14 |
| 73 | (1) | | 21 | Morbihan Adris Gwendal Oliveux | + 20:16 |
| 74 | (5) | | 21 | Lidl-Trek Future Racing | + 21:27 |
| 75 | (2) | | 25 | Cre'Actuel-Marie Morin-U 22 | + 24:44 |
| 76 | (10) | | 19 | Decathlon AG2R La Mondiale Development | + 25:13 |
| 77 | (1) | | 20 | Development Team DSM-Firmenich - PostNL | + 25:49 |
| 78 | (9) | | 23 | Philippe Wagner / Bazin | + 25:55 |
| 79 | (1) | | 23 | ATT Investments | + 26:00 |
| 80 | (1) | | 21 | Arkéa - B&B Hôtels Continentale | + 26:43 |
| 81 | - | | 25 | Lotto Dstny Development Team | + 27:13 |
| 82 | - | | 21 | ARA | Skip Capital | + 27:26 |
| 83 | (6) | | 20 | Team ColoQuick | + 27:47 |
| 84 | (1) | | 18 | Alpecin-Deceuninck Development Team | + 28:39 |
| 85 | (1) | | 21 | Arkéa - B&B Hôtels Continentale | + 29:38 |
| 86 | (3) | | 20 | Cre'Actuel-Marie Morin-U 22 | + 31:49 |
| 87 | (1) | | 20 | Wanty-Re Uz-Technord | + 33:27 |
| 88 | (5) | | 19 | Hagens Berman Jayco | + 33:52 |
| 89 | (2) | | 18 | Lotto Dstny Development Team | + 37:21 |
| 90 | (1) | | 22 | Dinan Sport Cycling | + 38:15 |
| 91 | (3) | | 31 | Dinan Sport Cycling | + 42:07 |
| 92 | (3) | | 22 | ARA | Skip Capital | + 45:22 |
| 93 | (5) | | 22 | Cre'Actuel-Marie Morin-U 22 | + 45:25 |
| 94 | (2) | | 23 | ATT Investments | + 45:26 |
| 95 | (2) | | 22 | Hagens Berman Jayco | + 46:02 |
| 96 | (3) | | 25 | Philippe Wagner / Bazin | + 47:00 |
| 97 | (3) | | 24 | VC Pays de Loudéac | + 47:33 |
| 98 | (3) | | 23 | Morbihan Adris Gwendal Oliveux | + 47:52 |
| 99 | (3) | | 19 | Hagens Berman Jayco | + 54:57 |
| 100 | (5) | | 19 | Development Team DSM-Firmenich - PostNL | + 01:01:45 |
| 101 | (2) | | 19 | Development Team DSM-Firmenich - PostNL | + 01:02:57 |
| 102 | (2) | | 21 | CIC - U - Nantes Atlantique | + 01:04:13 |
| 103 | (5) | | 20 | Team ColoQuick | + 01:05:12 |
| 104 | (3) | | 21 | CIC - U - Nantes Atlantique | + 01:06:26 |
| 105 | (1) | | 26 | Lidl-Trek Future Racing | + 01:07:43 |
| 106 | (3) | | 18 | ARA | Skip Capital | + 01:10:14 |
| 107 | (3) | | 21 | Morbihan Adris Gwendal Oliveux | + 01:12:28 |
| 108 | (3) | | | Cre'Actuel-Marie Morin-U 22 | + 01:24:10 |