
Dwars door Vlaanderen podium history | 2025 edition | Course map & profile | Photos | Start list
Roselare - Waregem, 184.6 km

Filippo Ganna wins the 2026 Dwars Door Vlaanderen.
Les Woodland's book Paris-Roubaix: The Inside Story - All the bumps of cycling's cobbled classic is available in print, Kindle eBook & audiobook versions. To get your copy, just click on the Amazon link on the right.
Weather at the finish city of Waregem at 2:35 PM, local time: 15C (58F), partly sunny, with the wind from the east-southeast at 24 km/hr (15 mph). No rain is forecast.
The race: Frederik Frison (Pinarello-Q36.5 Pro Cycling Team) did not start.
Here's the organizer's race summary:
A strong Filippo Ganna claimed his first-ever Dwars door Vlaanderen victory. In a race packed with attacks, Wout van Aert seemed destined for the win for a long time. Van Aert used the Eikenberg as a launchpad, bridged to the leaders in a single acceleration, and went solo with 10 kilometers to go. Despite having to change bikes twice, Ganna still managed to fight his way back to the front. In the closing kilometers, the Italian escaped the peloton in pursuit of Van Aert. He overtook Van Aert in the final meters while narrowly holding off the charging pack. A valiant Van Aert finished second, while Waerenskjold won the sprint for third place.
Around midday, the start signal for the 80th edition of Dwars door Vlaanderen was given in Roeselare. With many riders eager to join the early breakaway, attacks came in waves. A definitive move failed to form during the first hour, although the pace was extremely high with an average speed of 49.4 km/h. In the opening phase of the race, Teuns (Cofidis) and Berckmoes (Lotto Intermarché) abandoned after a crash.
The race exploded on the Berg ten Houte after 75 kilometres. An elite front group of eighteen riders — including Laporte and Brennan (Team Visma | Lease a Bike), F. Vermeersch (UAE Team Emirates - XRG), Andresen (Decathlon AG2R La Mondiale Team) and Pedersen (Lidl-Trek) — broke away from the peloton. INEOS Grenadiers and Alpecin-Premier Tech had missed the move and led the chase. At the top of the Trieu, the peloton was significantly reduced, while De Lie (Lotto Intermarché) was dropped and abandoned the race shortly afterwards.
With 84 kilometres to go, everything had to be reset following a regrouping with the peloton. On the Onderbossenaarstraat, Watson (INEOS Grenadiers) launched a new attack, after which a small group including Van Aert (Team Visma | Lease a Bike) and Pedersen managed to bridge across. However, this breakaway attempt did not last and was reeled back in after a few kilometres. The biggest casualties of the high pace were Andresen and Milan (Lidl-Trek).
The following 30 kilometers were marked by several breakaway attempts. A group including former Tour of Flanders winner Bettiol (EF Education - EasyPost) failed to extend their lead beyond 10 seconds. On the descent of the Hotond, a trio finally managed to break clear: Grégoire (Groupama - FDJ), Gachignard (TotalEnergies), and Larsen (Unibet Rose Rockets) built up a 30-second gap and seemed to be working well together. A strong Van Aert used the Eikenberg as a springboard and bridged the gap in a single acceleration. The pace proved too much for Gachignard, leaving us with a leading trio once again.
Behind the leading trio, a chasing group of three emerged: F. Vermeersch, Sheffield (INEOS Grenadiers), and T. Van Dijke escaped from the peloton in pursuit of the leaders. Following another acceleration by Van Aert on the Nokereberg, Grégoire was dropped. Larsen managed to hang on, leaving the two of them to head toward the finish in Waregem with 20km to go. Behind them, the pack reformed and the hunt for the leading duo was on.
With 10 kilometers to go, Van Aert dropped his final breakaway companion and went solo. Ganna (INEOS Grenadiers) escaped from the peloton in the closing kilometers and launched a chase for the Belgian. The Italian had to change bikes twice during this race, but he still managed to fight his way back to the front of the race. Van Aert entered the final kilometer with a 5-second lead, but it proved not to be enough. Ganna overtook Van Aert in the final meters to win the 80th edition of Dwars door Vlaanderen. Following a powerful performance, the Belgian finished a strong second, while Waerenskjold (Uno-X Mobility) won the sprint for third place.
Complete results:
175 starters, 69 classified finishers.
184.6 kilometers raced at an average speed of 48.483 km/hr
| 1 | Filippo Ganna | INEOS Grenadiers | 3hr 48min 27sec |
| 2 | Wout van Aert | Team Visma | Lease a Bike | s.t. |
| 3 | Søren Wærenskjold | Uno-X Mobility | @ 1sec |
| 4 | Biniam Girmay | NSN Cycling Team | s.t. |
| 5 | Laurence Pithie | Red Bull-BORA-hansgrohe | s.t. |
| 6 | Orluis Aular | Movistar Team | s.t. |
| 7 | Christophe Laporte | Team Visma | Lease a Bike | s.t. |
| 8 | Jasper Philipsen | Alpecin-Premier Tech | s.t. |
| 9 | Vito Braet | Lotto-Intermarché | s.t. |
| 10 | Mads Pedersen | Lidl-Trek | s.t. |
| 11 | Lukas Kubis | Unibet Rose Rockets | s.t. |
| 12 | Jon Barrenetxea | Movistar Team | s.t. |
| 13 | Hugo Page | Cofidis | s.t. |
| 14 | Rick Pluimers | Tudor Pro Cycling Team | s.t. |
| 15 | Carlos Canal | Movistar Team | s.t. |
| 16 | Axel Huens | Groupama-FDJ United | s.t. |
| 17 | Sandy Dujardin | Team TotalEnergies | s.t. |
| 18 | Matej Mohoric | Bahrain Victorious | s.t. |
| 19 | Paul Magnier | Soudal Quick-Step | s.t. |
| 20 | Thibaud Gruel | Groupama-FDJ United | s.t. |
| 21 | Brent Van Moer | Pinarello-Q36.5 Pro Cycling Team | s.t. |
| 22 | Alessandro Romele | XDS Astana Team | s.t. |
| 23 | Cédric Beullens | Lotto-Intermarché | s.t. |
| 24 | Oliver Naesen | Decathlon CMA CGM Team | s.t. |
| 25 | António Morgado | UAE Team Emirates-XRG | s.t. |
| 26 | Sam Watson | INEOS Grenadiers | s.t. |
| 27 | Tibor Del Grosso | Alpecin-Premier Tech | s.t. |
| 28 | Bjoern Koerdt | Team Picnic PostNL | s.t. |
| 29 | Alec Segaert | Bahrain Victorious | s.t. |
| 30 | Dries De Bondt | Team Jayco-AlUla | s.t. |
| 31 | Kasper Asgreen | EF Education-EasyPost | s.t. |
| 32 | Gianni Vermeersch | Red Bull-BORA-hansgrohe | s.t. |
| 33 | Michael Valgren | EF Education-EasyPost | s.t. |
| 34 | Daan Hoole | Decathlon CMA CGM Team | s.t. |
| 35 | Davide Toneatti | XDS Astana Team | s.t. |
| 36 | Alberto Bettiol | XDS Astana Team | s.t. |
| 37 | Benoît Cosnefroy | UAE Team Emirates-XRG | s.t. |
| 38 | Valentin Madouas | Groupama-FDJ United | s.t. |
| 39 | Stan Dewulf | Decathlon CMA CGM Team | s.t. |
| 40 | Jasha Sütterlin | Team Jayco-AlUla | s.t. |
| 41 | Jonas Abrahamsen | Uno-X Mobility | s.t. |
| 42 | Aimé De Gendt | Pinarello-Q36.5 Pro Cycling Team | s.t. |
| 43 | Thomas Gachignard | Team TotalEnergies | s.t. |
| 44 | Magnus Sheffield | INEOS Grenadiers | s.t. |
| 45 | Sander De Pestel | Decathlon CMA CGM Team | s.t. |
| 46 | Romain Grégoire | Groupama-FDJ United | 0:09 |
| 47 | Nils Politt | UAE Team Emirates-XRG | s.t. |
| 48 | Mick van Dijke | Red Bull-BORA-hansgrohe | 0:11 |
| 49 | Wessel Mouris | Unibet Rose Rockets | s.t. |
| 50 | Pepijn Reinderink | Soudal Quick-Step | s.t. |
| 51 | Per Strand Hagenes | Team Visma | Lease a Bike | s.t. |
| 52 | Tim van Dijke | Red Bull-BORA-hansgrohe | s.t. |
| 53 | Dries van Gestel | Soudal Quick-Step | 14 |
| 54 | Søren Kragh Andersen | Lidl-Trek | 0:19 |
| 55 | Florian Vermeersch | UAE Team Emirates-XRG | 0:24 |
| 56 | Lewis Askey | NSN Cycling Team | 0:54 |
| 57 | Dylan van Baarle | Soudal Quick-Step | s.t. |
| 58 | Matis Louvel | NSN Cycling Team | 2:54 |
| 59 | Niklas Larsen | Unibet Rose Rockets | s.t. |
| 60 | Zak Erzen | Bahrain Victorious | 7:01 |
| 61 | Rasmus Søjberg Pedersen | Decathlon CMA CGM Team | 7:33 |
| 62 | Rayan Boulahoite | Team TotalEnergies | s.t. |
| 63 | Julius Johansen | UAE Team Emirates-XRG | 7:34 |
| 64 | Tomas Kopecky | Unibet Rose Rockets | s.t. |
| 65 | Edoardo Zamperini | Cofidis | s.t. |
| 66 | Joshua Tarling | INEOS Grenadiers | s.t. |
| 67 | Max Walker | EF Education-EasyPost | s.t. |
| 68 | Riley Sheehan | NSN Cycling Team | s.t. |
| 69 | Matthew Brennan | Team Visma | Lease a Bike | s.t. |

2026 Dwars door Vlaanderen map

2026 Dwars door Vlaanderen profile
2026 Dwars Door Vlaanderen photos by Fotoreporter Sirotti:

Rider presentation ceremony before the race: Jonathan Milan

Off the front. Wout van Aert with Niklas Larsen on his wheel.

Filippo Ganna has drawn even with escapee Wout van Aert.

Coming to the final meters, the pack has caught escapee Wout van Aert (yellow jersey on right).

Filippo Ganna has overhauled Wout van Aert to win the race.

Ganna can enjoy his victory.

After the race Wout van aert talks with his son.

Filippo Ganna just after the race.

The 2026 Dwars Door Vlaanderen podium, from left: Wout van Aert (2nd), Filippo Ganna (1st) & Søren Wærenskjold (3rd)

Race winner Filippo Ganna.
Start list with back numbers: March 31, 2026
| EF Education-EasyPost | |
| 1 | Kasper Asgreen |
| 2 | Michael Valgren |
| 3 | Luke Lamperti |
| 4 | Max Walker |
| 5 | Colby Simmons |
| 6 | Matthias Schwarzbacher |
| 7 | Mikkel Honore |
| Team Visma | Lease a Bike | |
| 11 | Wout van Aert |
| 12 | Matthew Brennan |
| 13 | Per Strand Hagenes |
| 14 | Christophe Laporte |
| 15 | Pietro Mattio |
| 16 | Edoardo Affini |
| 17 | Axel Zingle |
| Alpecin-Premier Tech | |
| 21 | Jasper Philipsen |
| 22 | Tibor Del Grosso |
| 23 | Michael Gogl |
| 24 | Jensen Plowright |
| 25 | Edward Planckaert |
| 26 | Jonas Rickaert |
| 27 | Florian Sénéchal |
| Soudal Quick-Step | |
| 31 | Yves Lampaert |
| 32 | Paul Magnier |
| 33 | Casper Pedersen |
| 34 | Pepijn Reinderink |
| 35 | Dylan van Baarle |
| 36 | Dries van Gestel |
| 37 | Martin Svrcek |
| Lidl-Trek | |
| 41 | Mads Pedersen |
| 42 | Jonathan Milan |
| 43 | Mathias Sunekær Norsgaard |
| 44 | Søren Kragh Andersen |
| 45 | Mathias Vacek |
| 46 | Jakob Söderqvist |
| 47 | Max Walscheid |
| INEOS Grenadiers | |
| 51 | Filippo Ganna |
| 52 | Kim Heiduk |
| 53 | Connor Swift |
| 54 | Joshua Tarling |
| 55 | Sam Watson |
| 56 | Magnus Sheffield |
| 57 | Sam Welsford |
| Lotto-Intermarché | |
| 61 | Arnaud De Lie |
| 62 | Jenno Berckmoes |
| 63 | Cédric Beullens |
| 64 | Vito Braet |
| 65 | Huub Artz |
| 66 | Sébastien Grignard |
| 67 | Roel van Sintmaartensdijk |
| UAE Team Emirates-XRG | |
| 71 | Benoît Cosnefroy |
| 72 | Florian Vermeersch |
| 73 | Julius Johansen |
| 74 | Nils Politt |
| 75 | António Morgado |
| 76 | Rune Herregodts |
| 77 | Mikkel Bjerg |
| Red Bull-BORA-hansgrohe | |
| 81 | Laurence Pithie |
| 82 | Arne Marit |
| 83 | Jarrad Drizners |
| 84 | Callum Thornley |
| 85 | Gianni Vermeersch |
| 86 | Mick van Dijke |
| 87 | Tim van Dijke |
| Groupama-FDJ United | |
| 91 | Romain Grégoire |
| 92 | Thibaud Gruel |
| 93 | Axel Huens |
| 94 | Johan Jacobs |
| 95 | Valentin Madouas |
| 96 | Clément Russo |
| 97 | Cyril Barthe |
| NSN Cycling Team | |
| 101 | Biniam Girmay |
| 102 | Lewis Askey |
| 103 | Guillaume Boivin |
| 104 | Matis Louvel |
| 105 | Floris Van Tricht |
| 106 | Riley Sheehan |
| 107 | Tom Van Asbroeck |
| Decathlon CMA CGM Team | |
| 111 | Tobias Lund Andresen |
| 112 | Stan Dewulf |
| 113 | Sander De Pestel |
| 114 | Daan Hoole |
| 115 | Oliver Naesen |
| 116 | Stefan Bissegger |
| 117 | Rasmus Søjberg Pedersen |
| Movistar Team | |
| 121 | Iván García Cortina |
| 122 | Carlos Canal |
| 123 | Jon Barrenetxea |
| 124 | Lorenzo Milesi |
| 125 | Orluis Aular |
| 126 | Gonzalo Serrano |
| 127 | Filip Maciejuk |
| Bahrain Victorious | |
| 131 | Matej Mohoric |
| 132 | Kamil Gradek |
| 133 | Pau Miquel Delgado |
| 134 | Alessandro Borgo |
| 135 | Alec Segaert |
| 136 | Zak Erzen |
| 137 | Daniel Skerl |
| XDS Astana Team | |
| 141 | Alberto Bettiol |
| 142 | Aaron Gate |
| 143 | Alessandro Romele |
| 144 | Davide Ballerini |
| 145 | Arjen Livyns |
| 146 | Gleb Syritsa |
| 147 | Davide Toneatti |
| Uno-X Mobility | |
| 151 | Jonas Abrahamsen |
| 152 | Carl-Frederik Bevort |
| 153 | Storm Ingebrigtsen |
| 154 | William Blume Levy |
| 155 | Sakarias Koller Løland |
| 156 | Erik Resell |
| 157 | Søren Wærenskjold |
| Team Jayco-AlUla | |
| 161 | Jasha Sütterlin |
| 162 | Dries De Bondt |
| 163 | Dries De Pooter |
| 164 | Robert Donaldson |
| 165 | Luke Durbridge |
| 166 | Anders Foldager |
| 167 | Kelland O'Brien |
| Team Picnic PostNL | |
| 171 | John Degenkolb |
| 172 | Dillon Corkery |
| 173 | Oliver Peace |
| 174 | Sean Flynn |
| 175 | Bjoern Koerdt |
| 176 | Henri-Francois Haquin |
| 177 | Frank van den Broek |
| Cofidis | |
| 181 | Dylan Teuns |
| 182 | Camille Charret |
| 183 | Piet Allegaert |
| 184 | Milan Fretin |
| 185 | Hugo Page |
| 186 | Alexis Renard |
| 187 | Edoardo Zamperini |
| Tudor Pro Cycling Team | |
| 191 | Petr Kelemen |
| 192 | Sebastian Kolze Changizi |
| 193 | Luca Mozzato |
| 194 | Robin Froidevaux |
| 195 | Aivaras Mikutis |
| 196 | Rick Pluimers |
| 197 | Fabian Lienhard |
| Pinarello-Q36.5 Pro Cycling Team | |
| 201 | Aimé De Gendt |
| 202 | Frederik Frison |
| 203 | Emils Liepins |
| 204 | Kamil Malecki |
| 205 | Brent Van Moer |
| 206 | Sam Bennett |
| 207 | Quinten Hermans |
| Team TotalEnergies | |
| 211 | Anthony Turgis |
| 212 | Rayan Boulahoite |
| 213 | Alexys Brunel |
| 214 | Florian Dauphin |
| 215 | Sandy Dujardin |
| 216 | Thomas Gachignard |
| 217 | Samuel Leroux |
| Unibet Rose Rockets | |
| 221 | Lukas Kubis |
| 222 | Matyas Kopecky |
| 223 | Hartthijs de Vries |
| 224 | Niklas Larsen |
| 225 | Wessel Mouris |
| 226 | Joren Bloem |
| 227 | Tomas Kopecky |
| Burgos Burpellet BH | |
| 231 | Clément Alleno |
| 232 | Daniel Cavia |
| 233 | Hugo de la Calle |
| 234 | Eric Fagundez |
| 235 | Vojtech Kminek |
| 236 | Cesar Macias |
| 237 | Rodrigo Álvarez |
| Team Flanders-Baloise | |
| 241 | Dylan Vandenstorme |
| 242 | Ferre Geeraerts |
| 243 | Jules Hesters |
| 244 | Nolan Huysmans |
| 245 | Artuur Torney |
| 246 | Milan Van den Haute |
| 247 | Victor Vercouillie |