BikeRaceInfo: Current and historical race results, plus interviews, bikes, travel, and cycling historyBikeRaceInfo: Current and historical race results, plus interviews, bikes, travel, and cycling history
Search our site:
Email Newsletter icon, E-mail Newsletter icon, Email List icon, E-mail List icon Sign up for our Email Newsletter

2025 Tour of Norway (2.Pro), Norway

14th edition: May 29 - June 1, 2025

Tour of Norway podium history | 2024 edition | Start list
Stage 1 | Stage 2 | Stage 3 | Stage 4

Map of the 2025 Tour of Norway


Sunday, June 1: 4th & Final Stage, Stavanger - Stavanger, 130 km

Stage 4 map & profile

GC leader Matthew Brennan (left) wins the final stage.

Weather at the start/finish city of Stavanger at 2:50 PM, local time: 15C (59F), fair, with the wind from the southwest at 19 km/hr (12 mph). There is a 4% chance of rain.

The stage: Tour of Norway will conclude with the classic circuit in Stavanger, a course we’ve become well familiar with in recent years.

Alexander Kristoff has won this stage three years in a row, and as he chases his 100th professional victory, the Stavanger native will be hungry for a fourth consecutive win on the Vågen finish line.

The stage is identical to last year’s edition, featuring the Grisabakken, which will be climbed six times, each awarding KOM points. An intense stage that will encourage aggressive racing on the final day, ultimately deciding the overall winner of Tour of Norway 2025.

The race: Here's the race organizer's stage four report.

Stavanger shone brighter than ever as the 2025 Tour of Norway for men came to its conclusion.

Just like last year, the entire fourth stage was held on a local circuit in and around Stavanger, where the riders had to tackle the legendary Grisabakken climb no less than six times. 130 kilometers awaited, and with three intermediate sprints along the way, bonus seconds had the potential to play a key role in the general classification. Heading into the stage, young Brit Matthew Brennan (Team Visma | Lease a Bike) led the overall standings by 18 seconds over Victor Langellotti (Ineos Grenadiers) and 29 seconds over Swiss rider Jan Christen (UAE Team Emirates – XRG).

An early breakaway of four riders formed: Eirik Vang Aas (Team Coop – Repsol), Emil Toudal (Team ColoQuick), Wessel Mouris (Unibet Tietema Rockets), and Toon Aerts (Lotto). These riders would also contest the mountain points throughout the day.

The first time up Grisabakken, it was Denmark’s Emil Toudal who took maximum points, pulling level in the KOM standings with his teammate Joshua Gudnitz. Behind him followed Eirik Vang Aas and Toon Aerts. The trio repeated this order on the next ascent of Grisabakken, with Toudal taking over the lead in the mountains classification.

In the peloton, it was Israel – Premier Tech, Uno-X Mobility and Intermarché – Wanty who took control for their sprinters. Alexander Kristoff has been the king of Stavanger for the past three years, with three consecutive wins on the final stage of the Tour of Norway. No one knows the finish better than the 37-year-old, and both Uno-X Mobility and Kristoff himself were dreaming of a fourth in a row – in what would be the local hero’s final Tour of Norway.

The first intermediate sprint of the day went to Dutch rider Wessel Mouris, who picked up 3 bonus seconds and 10 points in the points competition – although it had no impact on the general or points standings. Just behind, Eirik Vang Aas and Toon Aerts crossed the line, taking 8 and 6 points respectively, along with 2 and 1 bonus seconds.

The remaining KOM points were shared between Toudal and Mouris in the breakaway, and it eventually became clear that it would be the Dane who would secure the mountains jersey.

The breakaway was reeled in on the final ascent of Grisabakken, with no major attacks coming from the peloton – setting the stage for a dramatic bunch sprint in Vågen. Entering the final kilometer, local hero Alexander Kristoff was perfectly positioned to sprint for his fourth straight win in Stavanger.

With Ethan Vernon and Matthew Brennan on his wheel, Kristoff launched his sprint with 250 meters to go. It looked for a long time like he would pull it off, but in the final 25 meters, Brennan just edged past – breaking Kristoff’s winning streak in Stavanger.

With the stage win, the young Brit also secured overall victory ahead of Victor Langellotti and Jan Christen. He also claimed both the points and young rider classifications. Emil Toudal was crowned king of the mountains after dominating Grisabakken from the break.

Complete results:

130 kilometers raced at an average speed of 44.961 km/hr

1 Matthew Brennan Team Visma | Lease a Bike 2hr 53min 29sec
2 Alexander Kristoff Uno-X Mobility s.t.
3 Tobias Lund Andresen Team Picnic PostNL s.t.
4 Ethan Vernon Israel-Premier Tech s.t.
5 Tibor Del Grosso Alpecin-Deceuninck s.t.
6 Rasmus Tiller Uno-X Mobility s.t.
7 Huub Artz Intermarché-Wanty s.t.
8 Tim van Dijke Red Bull-BORA-hansgrohe s.t.
9 Karsten Feldmann Team Coop-Repsol s.t.
10 Stan Van Tricht Alpecin-Deceuninck s.t.
11 Tom Van Asbroeck Israel-Premier Tech s.t.
12 Arjen Livyns Lotto s.t.
13 Anton Stensby Team Coop-Repsol s.t.
14 Jan Christen UAE Team Emirates-XRG s.t.
15 Rui Oliveira UAE Team Emirates-XRG s.t.
16 Attila Valter Team Visma | Lease a Bike s.t.
17 Victor Langellotti INEOS Grenadiers s.t.
18 Jørgen Nordhagen Team Visma | Lease a Bike s.t.
19 Alessandro Covi UAE Team Emirates-XRG s.t.
20 Morten Nørtoft Team Coloquick s.t.
21 Gal Glivar Alpecin-Deceuninck s.t.
22 Ådne Holter Uno-X Mobility s.t.
23 Maxim Van Gils Red Bull-BORA-hansgrohe s.t.
24 Marius Innhaug Dahl Norway s.t.
25 Fredrik Dversnes Uno-X Mobility s.t.
26 Ludvik Holstad Lillehammer CK Continental s.t.
27 Sebastian Molano UAE Team Emirates-XRG s.t.
28 Filip Maciejuk Red Bull-BORA-hansgrohe s.t.
29 Óscar Rodríguez INEOS Grenadiers s.t.
30 Vincent Van Hemelen Team Flanders-Baloise s.t.
31 Per Strand Hagenes Team Visma | Lease a Bike s.t.
32 Kevin Vermaerke Team Picnic PostNL s.t.
33 Cedrik Bakke Christophersen Unibet Tietema Rockets s.t.
34 Bjoern Koerdt Team Picnic PostNL s.t.
35 AJ August INEOS Grenadiers s.t.
36 Lorenzo Rota Intermarché-Wanty s.t.
37 Malte Hellerup Team Coloquick s.t.
38 Jonas Geens Team Flanders-Baloise s.t.
39 Henri Vandenabeele Lotto s.t.
40 Hartthijs de Vries Unibet Tietema Rockets s.t.
41 Kiaan Watts Israel-Premier Tech s.t.
42 Ward Vanhoof Team Flanders-Baloise s.t.
43 Wessel Mouris Unibet Tietema Rockets s.t.
44 Tosh Van der Sande Team Visma | Lease a Bike 0:12
45 Eirik Vang Aas Team Coop-Repsol 0:21
46 Anders Skaarseth Uno-X Mobility 0:40
47 Anton Palzer Red Bull-BORA-hansgrohe 0:48
48 Felix Ørn-Kristoff Intermarché-Wanty s.t.
49 Storm Ingebrigtsen Team Coop-Repsol s.t.
50 Odd Christian Eiking Unibet Tietema Rockets s.t.
51 Eduardo Sepulveda Lotto s.t.
52 Omar Fraile INEOS Grenadiers s.t.
53 Alexander Kamp Intermarché-Wanty 0:52
54 Toon Aerts Lotto 0:54
55 Emil Toudal Team Coloquick s.t.
56 Even Thorvaldsen Lillehammer CK Continental 0:58
57 Henrik Fjellheim Lillehammer CK Continental s.t.
58 Lionel Taminiaux Lotto 1:07
59 Peder Dahl Strand Norway 1:08
60 Laurens Sweeck Alpecin-Deceuninck 1:10
61 Floris Van Tricht Israel-Premier Tech s.t.
62 Laurent Gervais Project Echelon Racing s.t.
63 Toralf Rydningen Martinsen Lillehammer CK Continental 1:13
64 Brem Deman Team Flanders-Baloise s.t.
65 Georg Rydningen Martinsen Lillehammer CK Continental s.t.
66 Halvor Dolven Intermarché-Wanty s.t.
67 Kieran Haug Project Echelon Racing 1:15
68 Elias Maris Team Flanders-Baloise s.t.
69 Thomas Gloag Team Visma | Lease a Bike s.t.
70 Jonas Gregaard Lotto s.t.
71 Vegard Stake Laengen UAE Team Emirates-XRG s.t.
72 Daniel Årnes Norway s.t.
73 Kasper Haugland Norway 1:24
74 Martijn Budding Unibet Tietema Rockets 1:25
75 Dylan Vandenstorme Team Flanders-Baloise 1:27
76 Jelle Johannink Unibet Tietema Rockets 1:49
77 Emil Herzog Red Bull-BORA-hansgrohe s.t.
78 Tim Naberman Team Picnic PostNL 3:14
79 Krists Neilands Israel-Premier Tech 3:22
80 Ryan Mullen Red Bull-BORA-hansgrohe 4:36
81 Mikkel Bjerg UAE Team Emirates-XRG s.t.
82 William Blume Levy Uno-X Mobility s.t.
83 Juan Guillermo Martinez Team Picnic PostNL s.t.
84 Itamar Einhorn Israel-Premier Tech 7:47
85 Mees Vlot Team Picnic PostNL 9:50
86 Simen Evertsen-Hegreberg Norway s.t.
87 Brage Aulstad Lillehammer CK Continental s.t.
88 Joshua Gudnitz Team Coloquick s.t.

 

Final GC after stage 4:

  • GC winner: Matthew Brennan (Visma | Lease a Bike)
  • Mountains classification winner: Emil Toudal (Team ColoQuick)
  • Points classification winner: Matthew Brennan (Visma | Lease a Bike)
  • Best young rider: Matthew Brennan (Visma | Lease a Bike)
  • Teams classification winner: Visma | Lease a Bike

658.9 kilometers raced at an average speed of 42.402 km/hr

1 Matthew Brennan Team Visma | Lease a Bike 15hr 32min 22sec
2 Victor Langellotti INEOS Grenadiers @ 28sec
3 Jan Christen UAE Team Emirates-XRG 0:39
4 Tobias Lund Andresen Team Picnic PostNL 0:43
5 Tibor Del Grosso Alpecin-Deceuninck s.t.
6 Huub Artz Intermarché-Wanty 0:44
7 Ådne Holter Uno-X Mobility 0:46
8 Jonas Geens Team Flanders-Baloise 0:55
9 Fredrik Dversnes Uno-X Mobility 1:00
10 Vincent Van Hemelen Team Flanders-Baloise s.t.
11 Alessandro Covi UAE Team Emirates-XRG 1:12
12 Bjoern Koerdt Team Picnic PostNL s.t.
13 Jørgen Nordhagen Team Visma | Lease a Bike 1:20
14 Attila Valter Team Visma | Lease a Bike 1:22
15 Cedrik Bakke Christophersen Unibet Tietema Rockets s.t.
16 Arjen Livyns Lotto 1:30
17 Morten Nørtoft Team Coloquick 1:44
18 Maxim Van Gils Red Bull-BORA-hansgrohe 1:49
19 Henri Vandenabeele Lotto 1:54
20 Kevin Vermaerke Team Picnic PostNL 2:20
21 Tom Van Asbroeck Israel-Premier Tech 2:28
22 Storm Ingebrigtsen Team Coop-Repsol 2:37
23 Malte Hellerup Team Coloquick 2:59
24 Ward Vanhoof Team Flanders-Baloise 3:47
25 Toralf Rydningen Martinsen Lillehammer CK Continental 4:39
26 Per Strand Hagenes Team Visma | Lease a Bike 4:51
27 Even Thorvaldsen Lillehammer CK Continental 5:31
28 Anton Palzer Red Bull-BORA-hansgrohe 5:47
29 Brem Deman Team Flanders-Baloise 5:49
30 Tim van Dijke Red Bull-BORA-hansgrohe 6:21
31 Filip Maciejuk Red Bull-BORA-hansgrohe s.t.
32 Elias Maris Team Flanders-Baloise 7:40
33 Odd Christian Eiking Unibet Tietema Rockets 7:42
34 Marius Innhaug Dahl Norway 7:47
35 Wessel Mouris Unibet Tietema Rockets 7:49
36 Alexander Kamp Intermarché-Wanty 8:25
37 Hartthijs de Vries Unibet Tietema Rockets 9:03
38 Mikkel Bjerg UAE Team Emirates-XRG 9:06
39 Gal Glivar Alpecin-Deceuninck 9:27
40 Vegard Stake Laengen UAE Team Emirates-XRG 9:28
41 Óscar Rodríguez INEOS Grenadiers 10:05
42 Jonas Gregaard Lotto 10:11
43 Toon Aerts Lotto 10:13
44 Lorenzo Rota Intermarché-Wanty 10:15
45 Anton Stensby Team Coop-Repsol 10:28
46 AJ August INEOS Grenadiers 10:58
47 Ludvik Holstad Lillehammer CK Continental 11:05
48 Alexander Kristoff Uno-X Mobility 11:47
49 Kieran Haug Project Echelon Racing 11:50
50 Ethan Vernon Israel-Premier Tech 12:04
51 Felix Ørn-Kristoff Intermarché-Wanty 12:06
52 William Blume Levy Uno-X Mobility 12:36
53 Karsten Feldmann Team Coop-Repsol 13:06
54 Daniel Årnes Norway 13:12
55 Anders Skaarseth Uno-X Mobility 13:23
56 Dylan Vandenstorme Team Flanders-Baloise 14:13
57 Krists Neilands Israel-Premier Tech 14:15
58 Kiaan Watts Israel-Premier Tech 14:16
59 Halvor Dolven Intermarché-Wanty 14:35
60 Henrik Fjellheim Lillehammer CK Continental 15:04
61 Eduardo Sepulveda Lotto 15:07
62 Sebastian Molano UAE Team Emirates-XRG 15:14
63 Jelle Johannink Unibet Tietema Rockets 15:46
64 Georg Rydningen Martinsen Lillehammer CK Continental 15:57
65 Omar Fraile INEOS Grenadiers s.t.
66 Juan Guillermo Martinez Team Picnic PostNL 16:24
67 Emil Toudal Team Coloquick 17:22
68 Laurent Gervais Project Echelon Racing 18:33
69 Rasmus Tiller Uno-X Mobility 18:38
70 Martijn Budding Unibet Tietema Rockets 20:32
71 Peder Dahl Strand Norway 20:53
72 Stan Van Tricht Alpecin-Deceuninck 21:18
73 Tim Naberman Team Picnic PostNL 23:20
74 Kasper Haugland Norway s.t.
75 Eirik Vang Aas Team Coop-Repsol 23:42
76 Thomas Gloag Team Visma | Lease a Bike 24:29
77 Tosh Van der Sande Team Visma | Lease a Bike 27:11
78 Rui Oliveira UAE Team Emirates-XRG 27:12
79 Floris Van Tricht Israel-Premier Tech 27:13
80 Emil Herzog Red Bull-BORA-hansgrohe 28:51
81 Laurens Sweeck Alpecin-Deceuninck 30:33
82 Brage Aulstad Lillehammer CK Continental 32:59
83 Ryan Mullen Red Bull-BORA-hansgrohe 33:40
84 Lionel Taminiaux Lotto 35:04
85 Itamar Einhorn Israel-Premier Tech 38:47
86 Joshua Gudnitz Team Coloquick 45:16
87 Simen Evertsen-Hegreberg Norway 55:20
88 Mees Vlot Team Picnic PostNL 55:22

 

Stage 4 map & profile:

Stage 4 map

Stage 4 profile


Saturday, May 31: Stage 3, Jørpeland - Heia, 141.6 km

Stage 3 map & profile

Maxim Van Gils wins stage three. Photo: Getty Sport

Melanoma: It Started with a Freckle

David L. Stanley's masterful telling of his bout with skin cancer Melanoma: It Started with a Freckle is available in print, Kindle eBook and audiobook versions. To get your copy, just click on the Amazon link on the right.

Weather at the start city of Jørpeland, 31 km from the finish city of Heia, at 2:25 PM, local time: 16C (62F), partly cloudy, with the wind from the west at 11 km/hr (7 mph). No rain is forecast.

The stage: Tour of Norway returns to Strand Municipality and Jørpeland after four years, hosting Stage 3 for the men and Stage 1 for the women. Back in 2021, an incredibly strong Mads Pedersen won after an intense race on a course that truly tested the riders.

Unlike the last visit to Jørpeland, this year features an uphill finish at Heia – a 2.2 km climb at 7.7%. With six categorized climbs along the way and nearly 2,500 meters of elevation gain, this will likely be the toughest stage, favoring the climbers and shaping the general classification battle.

The race: Here's the stage three report from winner Maxim Van Gils' Team Red Bull-BORA-hansgrohe

It was a stage finish tailor-made for Maxim Van Gils: on the explosive final climb to Heia, the Belgian rider played to his strengths and sprinted to victory. On stage 3 of the Tour of Norway, the Red Bull – BORA – hansgrohe rider crossed the line with his arms aloft – celebrating his second win of the season.

The team had clearly marked this short but challenging 142-kilometre stage as a key opportunity. After a narrow defeat to race leader Matthew Brennan on stage 2, Van Gils came back with a vengeance – and turned the tables today. From the start, Red Bull – BORA – hansgrohe committed fully to setting up a finale on the decisive climb. The favourites quickly emerged on the steep slopes. Van Gils stayed sharp, covered every move, and remained perfectly positioned. On the final 250 metres, a thrilling battle unfolded with Brennan and Jan Christen. Brennan launched the sprint early, but Van Gils timed his move perfectly, kicking 50 metres from the line to take a confident and commanding victory.

Plan perfectly executed
Maxim Van Gils: "My full focus was on today’s stage, and I’m really happy I could take the win. After everything that’s happened recently, I was determined to come here to the Tour of Norway and show what I’m capable of. Yesterday already gave me confidence, so I was highly motivated to finish the job today – and it feels great that it all came together."

Shane Archbold, DS: “It went exactly as we had planned. The guys made the race tough because we knew it would suit Maxim even more. It's great that he was able to finish the job like this. But it's a shame that he's not at the front of the overall standings due to the crash on the first day.”

Complete results:

141.6 kilometers raced at an average speed of 41.794 km/hr

1 Maxim Van Gils Red Bull-BORA-hansgrohe 3hr 23min 17sec
2 Matthew Brennan Team Visma | Lease a Bike s.t.
3 Victor Langellotti INEOS Grenadiers s.t.
4 Jan Christen UAE Team Emirates-XRG s.t.
5 Huub Artz Intermarché-Wanty @ 3sec
6 Gal Glivar Alpecin-Deceuninck s.t.
7 Ådne Holter Uno-X Mobility 0:05
8 Jørgen Nordhagen Team Visma | Lease a Bike s.t.
9 Odd Christian Eiking Unibet Tietema Rockets s.t.
10 Tibor Del Grosso Alpecin-Deceuninck 0:08
11 Tobias Lund Andresen Team Picnic PostNL s.t.
12 AJ August INEOS Grenadiers 0:14
13 Jonas Geens Team Flanders-Baloise 0:16
14 Eduardo Sepulveda Lotto s.t.
15 Fredrik Dversnes Uno-X Mobility 0:19
16 Toralf Rydningen Martinsen Lillehammer CK Continental s.t.
17 Vincent Van Hemelen Team Flanders-Baloise s.t.
18 Cedrik Bakke Christophersen Unibet Tietema Rockets s.t.
19 Henrik Fjellheim Lillehammer CK Continental 0:31
20 Bjoern Koerdt Team Picnic PostNL s.t.
21 Alessandro Covi UAE Team Emirates-XRG s.t.
22 Krists Neilands Israel-Premier Tech 0:39
23 Toon Aerts Lotto s.t.
24 Morten Nørtoft Team Coloquick 0:41
25 Attila Valter Team Visma | Lease a Bike s.t.
26 Óscar Rodríguez INEOS Grenadiers s.t.
27 Marius Innhaug Dahl Norway 0:46
28 Lorenzo Rota Intermarché-Wanty s.t.
29 Arjen Livyns Lotto 0:49
30 Kevin Vermaerke Team Picnic PostNL 1:00
31 Kieran Haug Project Echelon Racing 1:06
32 Georg Rydningen Martinsen Lillehammer CK Continental 1:09
33 Henri Vandenabeele Lotto 1:13
34 Storm Ingebrigtsen Team Coop-Repsol s.t.
35 Malte Hellerup Team Coloquick s.t.
36 Ward Vanhoof Team Flanders-Baloise s.t.
37 Tom Van Asbroeck Israel-Premier Tech 1:30
38 Anton Palzer Red Bull-BORA-hansgrohe 1:38
39 Even Thorvaldsen Lillehammer CK Continental s.t.
40 Halvor Dolven Intermarché-Wanty s.t.
41 Juan Guillermo Martinez Team Picnic PostNL 2:19
42 Brem Deman Team Flanders-Baloise 2:48
43 Elias Maris Team Flanders-Baloise s.t.
44 Tim van Dijke Red Bull-BORA-hansgrohe 2:56
45 Filip Maciejuk Red Bull-BORA-hansgrohe s.t.
46 Mikkel Bjerg UAE Team Emirates-XRG 3:37
47 William Blume Levy Uno-X Mobility s.t.
48 Anders Skaarseth Uno-X Mobility s.t.
49 Vegard Stake Laengen UAE Team Emirates-XRG s.t.
50 Omar Fraile INEOS Grenadiers 3:45
51 Per Strand Hagenes Team Visma | Lease a Bike 3:53
52 Wessel Mouris Unibet Tietema Rockets 4:24
53 Alexander Kamp Intermarché-Wanty 4:31
54 Emil Toudal Team Coloquick s.t.
55 Jonas Gregaard Lotto 6:01
56 Laurent Gervais Project Echelon Racing s.t.
57 Vang Aas Eirik Team Coop-Repsol 6:32
58 Brage Aulstad Lillehammer CK Continental s.t.
59 Hartthijs de Vries Unibet Tietema Rockets 6:36
60 Felix Ørn-Kristoff Intermarché-Wanty 8:00
61 Ethan Vernon Israel-Premier Tech 8:52
62 Kiaan Watts Israel-Premier Tech s.t.
63 Thomas Gloag Team Visma | Lease a Bike s.t.
64 Dylan Vandenstorme Team Flanders-Baloise s.t.
65 Anton Stensby Team Coop-Repsol s.t.
66 Ludvik Holstad Lillehammer CK Continental s.t.
67 Karsten Feldmann Team Coop-Repsol s.t.
68 Rasmus Tiller Uno-X Mobility s.t.
69 Daniel Årnes Norway s.t.
70 Jelle Johannink Unibet Tietema Rockets 10:17
71 Tim Naberman Team Picnic PostNL s.t.
72 Stan Van Tricht Alpecin-Deceuninck 10:55
73 Laurens Sweeck Alpecin-Deceuninck s.t.
74 Martijn Budding Unibet Tietema Rockets s.t.
75 Kasper Haugland Norway s.t.
76 Alexander Kristoff Uno-X Mobility s.t.
77 Lionel Taminiaux Lotto s.t.
78 Emil Herzog Red Bull-BORA-hansgrohe s.t.
79 Ryan Mullen Red Bull-BORA-hansgrohe 11:02
80 Sebastian Molano UAE Team Emirates-XRG s.t.
81 Rui Oliveira UAE Team Emirates-XRG 11:42
82 Tosh Van der Sande Team Visma | Lease a Bike 15:51
83 Simen Evertsen-Hegreberg Norway 15:59
84 Trym Brennsæter Norway s.t.
85 Peder Dahl Strand Norway s.t.
86 Mees Vlot Team Picnic PostNL 16:01
87 Jonas Walton Project Echelon Racing s.t.
88 Johan Price-Pejtersen Alpecin-Deceuninck s.t.
89 Itamar Einhorn Israel-Premier Tech 16:23
90 Floris Van Tricht Israel-Premier Tech 16:42
91 Joshua Gudnitz Team Coloquick 18:32

 

GC after stage 3:

  • GC leader: Matthew Brennan (Visma | Lease a Bike)
  • Mountains classification leader: Joshua Gudnitz (Team ColoQuick)
  • Points classification leader: Matthew Brennan (Visma | Lease a Bike)
  • Best young rider: Matthew Brennan (Visma | Lease a Bike)
  • Teams classification leader: Visma | Lease a Bike

528.9 kilometers raced so far at an average speed of 41.808 km/hr

1 Matthew Brennan Team Visma | Lease a Bike 12hr 39min 3sec
2 Victor Langellotti INEOS Grenadiers @ 18sec
3 Jan Christen UAE Team Emirates-XRG 0:29
4 Tibor Del Grosso Alpecin-Deceuninck 0:33
5 Huub Artz Intermarché-Wanty 0:34
6 Ådne Holter Uno-X Mobility 0:36
7 Tobias Lund Andresen Team Picnic PostNL 0:37
8 Jonas Geens Team Flanders-Baloise 0:45
9 Fredrik Dversnes Uno-X Mobility 0:50
10 Vincent Van Hemelen Team Flanders-Baloise s.t.
11 Bjoern Koerdt Team Picnic PostNL 1:02
12 Alessandro Covi UAE Team Emirates-XRG s.t.
13 Jørgen Nordhagen Team Visma | Lease a Bike 1:10
14 Cedrik Bakke Christophersen Unibet Tietema Rockets 1:12
15 Attila Valter Team Visma | Lease a Bike s.t.
16 Arjen Livyns Lotto 1:20
17 Morten Nørtoft Team Coloquick 1:34
18 Maxim Van Gils Red Bull-BORA-hansgrohe 1:39
19 Storm Ingebrigtsen Team Coop-Repsol s.t.
20 Henri Vandenabeele Lotto 1:44
21 Kevin Vermaerke Team Picnic PostNL 2:10
22 Tom Van Asbroeck Israel-Premier Tech 2:18
23 Malte Hellerup Team Coloquick 2:49
24 Toralf Rydningen Martinsen Lillehammer CK Continental 3:16
25 Ward Vanhoof Team Flanders-Baloise 3:37
26 Mikkel Bjerg UAE Team Emirates-XRG 4:20
27 Even Thorvaldsen Lillehammer CK Continental 4:23
28 Brem Deman Team Flanders-Baloise 4:26
29 Per Strand Hagenes Team Visma | Lease a Bike 4:41
30 Anton Palzer Red Bull-BORA-hansgrohe 4:49
31 Tim van Dijke Red Bull-BORA-hansgrohe 6:11
32 Filip Maciejuk Red Bull-BORA-hansgrohe s.t.
33 Elias Maris Team Flanders-Baloise 6:15
34 Odd Christian Eiking Unibet Tietema Rockets 6:44
35 Alexander Kamp Intermarché-Wanty 7:23
36 Marius Innhaug Dahl Norway 7:37
37 Wessel Mouris Unibet Tietema Rockets 7:48
38 William Blume Levy Uno-X Mobility 7:50
39 Vegard Stake Laengen UAE Team Emirates-XRG 8:03
40 Jonas Gregaard Lotto 8:46
41 Hartthijs de Vries Unibet Tietema Rockets 8:53
42 Toon Aerts Lotto 9:13
43 Gal Glivar Alpecin-Deceuninck 9:17
44 Óscar Rodríguez INEOS Grenadiers 9:55
45 Lorenzo Rota Intermarché-Wanty 10:05
46 Anton Stensby Team Coop-Repsol 10:18
47 Kieran Haug Project Echelon Racing 10:25
48 Krists Neilands Israel-Premier Tech 10:43
49 AJ August INEOS Grenadiers 10:48
50 Ludvik Holstad Lillehammer CK Continental 10:55
51 Felix Ørn-Kristoff Intermarché-Wanty 11:08
52 Juan Guillermo Martinez Team Picnic PostNL 11:38
53 Alexander Kristoff Uno-X Mobility 11:43
54 Daniel Årnes Norway 11:47
55 Ethan Vernon Israel-Premier Tech 11:54
56 Anders Skaarseth Uno-X Mobility 12:33
57 Dylan Vandenstorme Team Flanders-Baloise 12:36
58 Karsten Feldmann Team Coop-Repsol 12:56
59 Halvor Dolven Intermarché-Wanty 13:12
60 Jelle Johannink Unibet Tietema Rockets 13:47
61 Henrik Fjellheim Lillehammer CK Continental 13:56
62 Kiaan Watts Israel-Premier Tech 14:06
63 Eduardo Sepulveda Lotto 14:09
64 Georg Rydningen Martinsen Lillehammer CK Continental 14:34
65 Omar Fraile INEOS Grenadiers 14:59
66 Sebastian Molano UAE Team Emirates-XRG 15:04
67 Emil Toudal Team Coloquick 16:18
68 Laurent Gervais Project Echelon Racing 17:13
69 Rasmus Tiller Uno-X Mobility 18:28
70 Martijn Budding Unibet Tietema Rockets 18:57
71 Peder Dahl Strand Norway 19:35
72 Tim Naberman Team Picnic PostNL 19:56
73 Stan Van Tricht Alpecin-Deceuninck 21:08
74 Kasper Haugland Norway 21:46
75 Brage Aulstad Lillehammer CK Continental 22:59
76 Thomas Gloag Team Visma | Lease a Bike 23:04
77 Vang Aas Eirik Team Coop-Repsol 23:16
78 Floris Van Tricht Israel-Premier Tech 25:53
79 Tosh Van der Sande Team Visma | Lease a Bike 26:49
80 Emil Herzog Red Bull-BORA-hansgrohe 26:52
81 Rui Oliveira UAE Team Emirates-XRG 27:02
82 Johan Price-Pejtersen Alpecin-Deceuninck 28:36
83 Ryan Mullen Red Bull-BORA-hansgrohe 28:54
84 Laurens Sweeck Alpecin-Deceuninck 29:13
85 Itamar Einhorn Israel-Premier Tech 30:50
86 Trym Brennsæter Norway 32:40
87 Lionel Taminiaux Lotto 33:47
88 Joshua Gudnitz Team Coloquick 35:16
89 Simen Evertsen-Hegreberg Norway 45:20
90 Mees Vlot Team Picnic PostNL 45:22
91 Jonas Walton Project Echelon Racing 52:20

 

Stage 3 map & profile:

Stage 3 map

Stage 3 profile


find us on Facebook See our youtube channel

The Story of the Tour de France, vol.2 South Salem Cycleworks frames Melanoma: It Started With a Freckle The Story of the Giro d’Italia, vol.2 Shade Vise sunglass holder Paris-Roubaix: The Inside Store Advertise with us!


Content continues below the ads

The Story of the Tour de France, vol.1 South Salem Cycleworks frames Melanoma: It Started With a Freckle

Friday, May 30: Stage 2, Egersund - Oltedal, 208.1 km

Stage 2 map & profile

Matthew Brennan wins the stage and becomes the new GC leader. Photo: Kjetil Birkedal Pedersen

Story of the Giro d'Italia, volume 1

Bill and Carol McGann's book The Story of the Giro d'Italia, A Year-by-Year History of the Tour of Italy, Vol 1: 1909 - 1970 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 Oltedal at 2:10 PM, local time: 13C (56F), cloudy, with the wind from the west-northwest at 18 km/hr (11 mph). There is a 6% chance of rain.

The stage: The longest stage of the race starts in Egersund, a familiar host city for Tour of Norway. The peloton heads south to Flekkefjord before turning north again via Tonstad and Sirdalen, where sprint points and bonus seconds will be awarded, most likely to a breakaway.

Before reaching this point, the riders will tackle Rundtjørn after 36 kilometers – a 4.4 km climb with an average gradient of 7.5%. The only Category 1 climb of the race appears after 156 kilometers: Sirdalstoppen, which will be decisive in the battle for the KOM jersey.

From there, the peloton moves westward past Tjørhom, descending Hunnedalen to Byrkjedal, where positioning will be crucial ahead of the uphill finish in Oltedal. Within the final 10 kilometers, Dirdalsbakken (1.6 km at 8%) offers a chance to apply extra pressure. Just five kilometers later, the finish climb to Oltedal awaits. 2.3 km at 5%, an ideal opportunity for puncheurs to make their mark.

The race: Here's the report from stage winner Matthew Brennan's Team Visma | Lease a Bike.

Matthew Brennan has claimed victory in the second stage of the Tour of Norway. The young Brit sprinted brilliantly to the stage win, also taking over the lead in the general classification.

“This one was really special”, a proud Brennan says afterwards. “A lot of riders tried to attack near the end, but the team did everything they could to put me in a good position for the finish. To be able to finish it off like that is just incredible.”

The 19-year-old rider credited his eighth win of the season to the strong efforts of his teammates. “Everyone played a key role today, especially in that chaotic finale. We were always well-positioned and controlled the race. That gives such a great feeling.” Sports director Frans Maassen adds: “This was even more impressive than our attempt yesterday. A fantastic job by Matthew, he crowned the hard work of the entire team.”

Maassen was referring in particular to Thomas Gloag’s attack on the climb of the Sirdalstoppen. That move allowed Team Visma | Lease a Bike to sit back in the bunch towards the finish of the second stage. “That was a very smart move from us”, Maassen says. “We followed it up strongly with great work from Tosh, Attila, and Jørgen, and then in the final with Per. Of course, Matthew still had to have the legs, but once again, he showed that. Incredible.”

Robbert de Groot, Head of Development: “Matthew is going through an incredible development. The fact that the team is riding for him at such a young age is something he’s earned himself. He currently has the most victories of any rider in our team this season.” Brennan’s win is his eighth, bringing the WorldTeam’s tally to seventeen victories this cycling year.

The so-called White Jersey group, consisting of riders under 23, is being given plenty of opportunities to prove themselves in various races and with Brennan, those chances are turning into standout victories. “This is a very special situation, and it shows we’re heading in the right direction as a team. Matthew’s performances - today again with support from former Development Team riders Per and Jørgen - send a clear message to his peers. It’s a huge motivation for the young guys who are already knocking on the door”, De Groot concludes.

Complete results:

208.1 kilometers rraced at an average speed of 40.382 km/hr

1 Matthew Brennan Team Visma | Lease a Bike 5hr 9min 12sec
2 Maxim Van Gils Red Bull-BORA-hansgrohe s.t.
3 Victor Langellotti INEOS Grenadiers s.t.
4 Tobias Lund Andresen Team Picnic PostNL @ 3sec
5 Jan Christen UAE Team Emirates-XRG s.t.
6 Jonas Geens Team Flanders-Baloise s.t.
7 Tibor Del Grosso Alpecin-Deceuninck s.t.
8 Bjoern Koerdt Team Picnic PostNL 0:05
9 Ludvik Holstad Lillehammer CK Continental s.t.
10 Ådne Holter Uno-X Mobility s.t.
11 Odd Christian Eiking Unibet Tietema Rockets s.t.
12 Huub Artz Intermarché-Wanty s.t.
13 Arjen Livyns Lotto s.t.
14 Morten Nørtoft Team Coloquick s.t.
15 Elias Maris Team Flanders-Baloise s.t.
16 Vincent Van Hemelen Team Flanders-Baloise s.t.
17 Fredrik Dversnes Uno-X Mobility s.t.
18 Cedrik Bakke Christophersen Unibet Tietema Rockets s.t.
19 Henri Vandenabeele Lotto s.t.
20 Alessandro Covi UAE Team Emirates-XRG s.t.
21 Attila Valter Team Visma | Lease a Bike s.t.
22 Ward Vanhoof Team Flanders-Baloise s.t.
23 Malte Hellerup Team Coloquick 0:14
24 Ethan Vernon Israel-Premier Tech s.t.
25 Floris Van Tricht Israel-Premier Tech s.t.
26 Jelle Johannink Unibet Tietema Rockets 0:17
27 Storm Ingebrigtsen Team Coop-Repsol s.t.
28 Marius Innhaug Dahl Norway s.t.
29 Jørgen Nordhagen Team Visma | Lease a Bike s.t.
30 Mikkel Bjerg UAE Team Emirates-XRG s.t.
31 Gal Glivar Alpecin-Deceuninck s.t.
32 Óscar Rodríguez INEOS Grenadiers s.t.
33 Toralf Rydningen Martinsen Lillehammer CK Continental s.t.
34 Tom Van Asbroeck Israel-Premier Tech 0:22
35 Kieran Haug Project Echelon Racing s.t.
36 Dylan Vandenstorme Team Flanders-Baloise s.t.
37 Georg Rydningen Martinsen Lillehammer CK Continental s.t.
38 Henrik Fjellheim Lillehammer CK Continental s.t.
39 Hartthijs de Vries Unibet Tietema Rockets s.t.
40 Alexander Kristoff Uno-X Mobility s.t.
41 Juan Guillermo Martinez Team Picnic PostNL s.t.
42 Per Strand Hagenes Team Visma | Lease a Bike s.t.
43 Lorenzo Rota Intermarché-Wanty s.t.
44 Kevin Vermaerke Team Picnic PostNL s.t.
45 Jonas Gregaard Lotto 0:50
46 Eduardo Sepulveda Lotto s.t.
47 Brem Deman Team Flanders-Baloise s.t.
48 Even Thorvaldsen Lillehammer CK Continental s.t.
49 Anton Stensby Team Coop-Repsol 1:00
50 Krists Neilands Israel-Premier Tech 1:07
51 Felix Ørn-Kristoff Intermarché-Wanty 1:13
52 Stan Van Tricht Alpecin-Deceuninck 1:16
53 Anton Palzer Red Bull-BORA-hansgrohe s.t.
54 Alexander Kamp Intermarché-Wanty 1:18
55 Tim van Dijke Red Bull-BORA-hansgrohe 1:20
56 Filip Maciejuk Red Bull-BORA-hansgrohe s.t.
57 AJ August INEOS Grenadiers 1:37
58 Toon Aerts Lotto 2:00
59 Wessel Mouris Unibet Tietema Rockets 2:12
60 William Blume Levy Uno-X Mobility 2:13
61 Laurent Gervais Project Echelon Racing 2:15
62 Kiaan Watts Israel-Premier Tech s.t.
63 Omar Fraile INEOS Grenadiers 2:17
64 Rui Oliveira UAE Team Emirates-XRG s.t.
65 Daniel Årnes Norway 2:20
66 Ethan Craine Project Echelon Racing 2:44
67 Dahl Strand Peder Norway 2:48
68 Emil Herzog Red Bull-BORA-hansgrohe 2:54
69 Trym Brennsæter Norway 3:38
70 Karsten Feldmann Team Coop-Repsol s.t.
71 Vegard Stake Laengen UAE Team Emirates-XRG s.t.
72 Sebastian Molano UAE Team Emirates-XRG s.t.
73 Johan Price-Pejtersen Alpecin-Deceuninck s.t.
74 Ryan Mullen Red Bull-BORA-hansgrohe 4:49
75 Halvor Dolven Intermarché-Wanty 4:54
76 Artem Shmidt INEOS Grenadiers 5:15
77 Thomas Gloag Team Visma | Lease a Bike s.t.
78 Emil Toudal Team Coloquick s.t.
79 Laurens Sweeck Alpecin-Deceuninck s.t.
80 Tim Naberman Team Picnic PostNL 7:36
81 Martijn Budding Unibet Tietema Rockets s.t.
82 Rasmus Tiller Uno-X Mobility s.t.
83 Kasper Haugland Norway s.t.
84 Itamar Einhorn Israel-Premier Tech s.t.
85 Brage Aulstad Lillehammer CK Continental s.t.
86 Anders Skaarseth Uno-X Mobility s.t.
87 Tosh Van der Sande Team Visma | Lease a Bike s.t.
88 Mees Vlot Team Picnic PostNL 16:18
89 Simen Evertsen-Hegreberg Norway s.t.
90 Arne Marit Intermarché-Wanty s.t.
91 Lionel Taminiaux Lotto s.t.
92 Joshua Gudnitz Team Coloquick s.t.
93 Eirik Vang Aas Team Coop-Repsol s.t.
94 Colby Lange Project Echelon Racing 23:04
95 Jonas Walton Project Echelon Racing 23:16

 

GC after stage 2:

  • GC leader: Matthew Brennan (Visma | Lease a Bike)
  • Mountains classification leader: Emil Toudal (Team Coloquick)
  • Points classification leader: Matthew Brennan (Visma | Lease a Bike)
  • Best young rider: Matthew Brennan (Visma | Lease a Bike)
  • Teams classification leader: Visma | Lease a Bike

387.3 kilometers raced so far at an average speed of 41.800 km/hr

1 Matthew Brennan Team Visma | Lease a Bike 9hr 15min 56sec
2 Victor Langellotti INEOS Grenadiers @ 12sec
3 Tibor Del Grosso Alpecin-Deceuninck 0:15
4 Storm Ingebrigtsen Team Coop-Repsol 0:16
5 Tobias Lund Andresen Team Picnic PostNL 0:19
6 Jan Christen UAE Team Emirates-XRG s.t.
7 Jonas Geens Team Flanders-Baloise s.t.
8 Ådne Holter Uno-X Mobility 0:21
9 Bjoern Koerdt Team Picnic PostNL s.t.
10 Fredrik Dversnes Uno-X Mobility s.t.
11 Huub Artz Intermarché-Wanty s.t.
12 Arjen Livyns Lotto s.t.
13 Alessandro Covi UAE Team Emirates-XRG s.t.
14 Vincent Van Hemelen Team Flanders-Baloise s.t.
15 Henri Vandenabeele Lotto s.t.
16 Attila Valter Team Visma | Lease a Bike s.t.
17 Mikkel Bjerg UAE Team Emirates-XRG 0:33
18 Tom Van Asbroeck Israel-Premier Tech 0:38
19 Alexander Kristoff Uno-X Mobility s.t.
20 PerStrand Hagenes Team Visma | Lease a Bike s.t.
21 Morten Nørtoft Team Coloquick 0:43
22 Cedrik Bakke Christophersen Unibet Tietema Rockets s.t.
23 Jørgen Nordhagen Team Visma | Lease a Bike 0:55
24 Kevin Vermaerke Team Picnic PostNL 1:00
25 Anton Stensby Team Coop-Repsol 1:16
26 Malte Hellerup Team Coloquick 1:26
27 Brem Deman Team Flanders-Baloise 1:28
28 Maxim Van Gils Red Bull-BORA-hansgrohe 1:39
29 Ludvik Holstad Lillehammer CK Continental 1:53
30 Hartthijs de Vries Unibet Tietema Rockets 2:07
31 Ward Vanhoof Team Flanders-Baloise 2:14
32 Jonas Gregaard Lotto 2:35
33 Even Thorvaldsen Lillehammer CK Continental s.t.
34 Alexander Kamp Intermarché-Wanty 2:42
35 Daniel Årnes Norway 2:45
36 Toralf Rydningen Martinsen Lillehammer CK Continental 2:47
37 Ethan Vernon Israel-Premier Tech 2:52
38 Felix Ørn-Kristoff Intermarché-Wanty 2:58
39 Anton Palzer Red Bull-BORA-hansgrohe 3:01
40 Tim van Dijke Red Bull-BORA-hansgrohe 3:05
41 Filip Maciejuk Red Bull-BORA-hansgrohe s.t.
42 Wessel Mouris Unibet Tietema Rockets 3:14
43 Elias Maris Team Flanders-Baloise 3:17
44 Jelle Johannink Unibet Tietema Rockets 3:26
45 Peder Dahl Strand Norway 3:26
46 Dylan Vandenstorme Team Flanders-Baloise 3:34
47 Sebastian Molano UAE Team Emirates-XRG 3:54
48 Karsten Feldmann Team Coop-Repsol s.t.
49 William Blume Levy Uno-X Mobility 4:03
50 Vegard Stake Laengen UAE Team Emirates-XRG 4:16
51 Kiaan Watts Israel-Premier Tech 5:04
52 Odd Christian Eiking Unibet Tietema Rockets 6:29
53 Marius Innhaug Dahl Norway 6:41
54 Artem Shmidt INEOS Grenadiers 7:22
55 Martijn Budding Unibet Tietema Rockets 7:52
56 Toon Aerts Lotto 8:24
57 Anders Skaarseth Uno-X Mobility 8:46
58 Floris Van Tricht Israel-Premier Tech 9:01
59 Gal Glivar Alpecin-Deceuninck 9:04
60 Óscar Rodríguez INEOS Grenadiers s.t.
61 Kieran Haug Project Echelon Racing 9:09
62 Juan Guillermo Martinez Team Picnic PostNL s.t.
63 Lorenzo Rota Intermarché-Wanty s.t.
64 Rasmus Tiller Uno-X Mobility 9:26
65 Tim Naberman Team Picnic PostNL 9:29
66 Krists Neilands Israel-Premier Tech 9:54
67 Stan Van Tricht Alpecin-Deceuninck 10:03
68 AJ August INEOS Grenadiers 10:24
69 Kasper Haugland Norway 10:41
70 Tosh Van der Sande Team Visma | Lease a Bike 10:48
71 Laurent Gervais Project Echelon Racing 11:02
72 Omar Fraile INEOS Grenadiers 11:04
73 Halvor Dolven Intermarché-Wanty 11:24
74 Ethan Craine Project Echelon Racing 11:31
75 Emil Toudal Team Coloquick 11:37
76 Johan Price-Pejtersen Alpecin-Deceuninck 12:25
77 Georg Rydningen Martinsen Lillehammer CK Continental 13:15
78 Henrik Fjellheim Lillehammer CK Continental s.t.
79 Eduardo Sepulveda Lotto 13:43
80 Thomas Gloag Team Visma | Lease a Bike 14:02
81 Itamar Einhorn Israel-Premier Tech 14:17
82 Rui Oliveira UAE Team Emirates-XRG 15:10
83 Emil Herzog Red Bull-BORA-hansgrohe 15:47
84 Brage Aulstad Lillehammer CK Continental 16:17
85 Trym Brennsæter Norway 16:31
86 Joshua Gudnitz Team Coloquick 16:34
87 Eirik Vang Aas Team Coop-Repsol s.t.
88 Ryan Mullen Red Bull-BORA-hansgrohe 17:42
89 Laurens Sweeck Alpecin-Deceuninck 18:08
90 Arne Marit Intermarché-Wanty 19:54
91 Lionel Taminiaux Lotto 22:42
92 Mees Vlot Team Picnic PostNL 29:11
93 Simen Evertsen-Hegreberg Norway s.t.
94 Colby Lange Project Echelon Racing 29:28
95 Jonas Walton Project Echelon Racing 36:09

 

Stage 2 map & profile:

Stage 2 map

Stage 2 profile


Content continues below the ads

The Story of the Giro d’Italia, vol.1 Shade Vise sunglass holder Paris-Roubaix: The Inside Store

Thursday, May 29: Stage 1, Sola - Sola, 179.2 km

Stage 1 map & profile

Storm Ingebrigtsen wins the first stage. Photo: Szymon Gruchalski

Tour de France: 2023

Bill & Carol McGann’s book The Story of the 2023 Tour de France, 2023: The Viking Again Conquers the Tour is available in both Kindle eBook & audiobook versions. To get your copy, just click on the Amazon link on the right.

Weather at the start/finish city of Sola at 2:10 PM, local time: 14C (58F), fair, with the wind from the south at 29 km/hr (18 mph). There is a 60% chance of rain.

The stage: For the first time in Tour of Norway’s history, Sola will host both the start and finish of a stage. Last year, Stage 3 started at Vår Energi Arena Sola before heading to Egersund, where Jordi Meeus took the victory. This year, both the start and finish will be in Sola’s city center.

A bunch sprint is the most likely outcome on the opening day, but the wind-exposed areas along Jærstrendene could create crosswinds and splits in the peloton before returning to Sola. The riders will pass the finish line once before the final sprint, giving them a preview of the finishing stretch before the real showdown after 182 kilometers and 1,818 meters of climbing.

The climbs of Seldalsbakken and Helland will determine who gets to wear the King of the Mountains jersey after the first stage, while sprint points and bonus seconds will be contested at Tjelta.

The race: Here's the report from second-place Matthew Brennan's Team Visma | Lease a Bike:

Matthew Brennan sprinted to second place in the opening stage of the Tour of Norway. In surprising fashion, the victory went to Storm Ingebrigtsen, who just stayed ahead of the oncoming peloton in the final meters.

On Thursday, Team Visma | Lease a Bike appeared at the start of the four-day stage race in Scandinavia with a strong squad, including Norwegians Jørgen Nordhagen and Per Strand Hagenes. Early on, a group of riders broke away in southern Norway. Thanks to the efforts of the Dutch team, the breakaway’s lead never extended beyond four minutes.

Team Visma | Lease a Bike is presented before the stage start.

With dozens of flat kilometres leading toward the finish in Solakrossen, a bunch sprint seemed inevitable, until the wind began to play a major role in today’s race. With sixty kilometers to go, the peloton split into several groups. Led by Hagenes, the breakaway was caught in the final phase of the stage, although his compatriot Ingebrigtsen had attacked solo moment before. The Norwegian narrowly held off the reduced peloton and Brennan to claim his first professional victory.

“The conditions made it extremely tough today. In the finale, my hands were so cold I could barely shift gears. We went all-in as a team to bring back the break. Like everyone else from the team, I gave it my all and came through the final corner at the front of the peloton. Unfortunately, Ingebrigtsen was just too far ahead”, Brennan says afterwards.

Sports director Frans Maassen is proud of his team. “We saw early on that the crosswinds could make it hard to bring back the breakaway. So our riders moved to the front and gave everything. We caught the break, but one rider stayed ahead. Unfortunately, we didn’t have quite enough power left after that. We were hoping to sprint for the victory today with Matthew. It’s a shame that didn’t happen, but we rode a very strong race.”

According to both Maassen and Brennan, the team’s way of racing gives them confidence for the coming days in Norway. “We’re here with a motivated group, which is great. Tomorrow I expect an open race where anything can happen. We’ll need to stay alert”, Maassen says. Brennan adds: “Looking at the general classification, we still have several riders in a good position. Hopefully we can capitalize on that promising situation tomorrow.”

Complete results:

179.2 kilometers raced at an average speed of 43.539 km/hr

1 Storm Ingebrigtsen Team Coop-Repsol 4hr 6min 57sec
2 Matthew Brennan Team Visma | Lease a Bike @ 3sec
3 Tibor Del Grosso Alpecin-Deceuninck s.t.
4 Sebastian Molano UAE Team Emirates-XRG s.t.
5 Alexander Kristoff Uno-X Mobility s.t.
6 Tobias Lund Andresen Team Picnic PostNL s.t.
7 Karsten Feldmann Team Coop-Repsol s.t.
8 Tom Van Asbroeck Israel-Premier Tech s.t.
9 Mikkel Bjerg UAE Team Emirates-XRG s.t.
10 Fredrik Dversnes Uno-X Mobility s.t.
11 Alessandro Covi UAE Team Emirates-XRG s.t.
12 Anton Stensby Team Coop-Repsol s.t.
13 Per Strand Hagenes Team Visma | Lease a Bike s.t.
14 Ådne Holter Uno-X Mobility s.t.
15 Joshua Gudnitz Team Coloquick s.t.
16 Arjen Livyns Lotto s.t.
17 Huub Artz Intermarché-Wanty s.t.
18 Bjoern Koerdt Team Picnic PostNL s.t.
19 Martijn Budding Unibet Tietema Rockets s.t.
20 Vincent Van Hemelen Team Flanders-Baloise s.t.
21 Jan Christen UAE Team Emirates-XRG s.t.
22 Victor Langellotti INEOS Grenadiers s.t.
23 Henri Vandenabeele Lotto s.t.
24 Jonas Geens Team Flanders-Baloise s.t.
25 Eirik Vang Aas Team Coop-Repsol s.t.
26 Attila Valter Team Visma | Lease a Bike s.t.
27 Daniel Årnes Norway 0:18
28 Morten Nørtoft Team Coloquick 0:25
29 Peder Dahl Strand Norway s.t.
30 Kevin Vermaerke Team Picnic PostNL s.t.
31 Cedrik Bakke Christophersen Unibet Tietema Rockets s.t.
32 Brem Deman Team Flanders-Baloise s.t.
33 Jørgen Nordhagen Team Visma | Lease a Bike s.t.
34 Vegard Stake Laengen UAE Team Emirates-XRG s.t.
35 Wessel Mouris Unibet Tietema Rockets 0:49
36 Anders Skaarseth Uno-X Mobility 0:57
37 Malte Hellerup Team Coloquick 0:59
38 Alexander Kamp Intermarché-Wanty 1:11
39 Filip Maciejuk Red Bull-BORA-hansgrohe 1:32
40 Tim van Dijke Red Bull-BORA-hansgrohe s.t.
41 Maxim Van Gils Red Bull-BORA-hansgrohe s.t.
42 Anton Palzer Red Bull-BORA-hansgrohe s.t.
43 Jonas Gregaard Lotto s.t.
44 Even Thorvaldsen Lillehammer CK Continental s.t.
45 Felix Ørn-Kristoff Intermarché-Wanty s.t.
46 Hartthijs de Vries Unibet Tietema Rockets s.t.
47 Rasmus Tiller Uno-X Mobility 1:37
48 William Blume Levy Uno-X Mobility s.t.
49 Ludvik Holstad Lillehammer CK Continental s.t.
50 Tim Naberman Team Picnic PostNL 1:40
51 Artem Shmidt INEOS Grenadiers 1:54
52 Ward Vanhoof Team Flanders-Baloise 1:56
53 Toralf Rydningen Martinsen Lillehammer CK Continental 2:17
54 Ethan Vernon Israel-Premier Tech 2:25
55 Kiaan Watts Israel-Premier Tech 2:36
56 Kasper Haugland Norway 2:56
57 Jelle Johannink Unibet Tietema Rockets s.t.
58 Dylan Vandenstorme Team Flanders-Baloise 2:59
59 Elias Maris Team Flanders-Baloise s.t.
60 Tosh Van der Sande Team Visma | Lease a Bike s.t.
61 Arne Marit Intermarché-Wanty 3:23
62 Colby Lange Project Echelon Racing 6:11
63 Odd Christian Eiking Unibet Tietema Rockets s.t.
64 Toon Aerts Lotto s.t.
65 Emil Toudal Team Coloquick s.t.
66 Marius Innhaug Dahl Norway s.t.
67 Lionel Taminiaux Lotto s.t.
68 Halvor Dolven Intermarché-Wanty 6:17
69 Itamar Einhorn Israel-Premier Tech 6:28
70 Gal Glivar Alpecin-Deceuninck 8:34
71 Laurent Gervais Project Echelon Racing s.t.
72 Floris Van Tricht Israel-Premier Tech s.t.
73 Brage Aulstad Lillehammer CK Continental s.t.
74 Krists Neilands Israel-Premier Tech s.t.
75 Óscar Rodríguez INEOS Grenadiers s.t.
76 Thomas Gloag Team Visma | Lease a Bike s.t.
77 AJ August INEOS Grenadiers s.t.
78 Stan Van Tricht Alpecin-Deceuninck s.t.
79 Juan Guillermo Martinez Team Picnic PostNL s.t.
80 Kieran Haug Project Echelon Racing s.t.
81 Omar Fraile INEOS Grenadiers s.t.
82 Ethan Craine Project Echelon Racing s.t.
83 Lorenzo Rota Intermarché-Wanty s.t.
84 Johan Price-Pejtersen Alpecin-Deceuninck s.t.
85 Mees Vlot Team Picnic PostNL 12:40
86 Emil Herzog Red Bull-BORA-hansgrohe s.t.
87 Eduardo Sepulveda Lotto s.t.
88 Ryan Mullen Red Bull-BORA-hansgrohe s.t.
89 Rui Oliveira UAE Team Emirates-XRG s.t.
90 Simen Evertsen-Hegreberg Norway s.t.
91 Trym Brennsæter Norway s.t.
92 Henrik Fjellheim Lillehammer CK Continental s.t.
93 Georg Rydningen Martinsen Lillehammer CK Continental s.t.
94 Jonas Walton Project Echelon Racing s.t.
95 Laurens Sweeck Alpecin-Deceuninck s.t.

 

GC after stage 1:

  • GC leader: Storm Ingebrigtsen (Team Coop-Repsol)
  • Mountains classification leader: Storm Ingebrigtsen (Team Coop-Repsol)
  • Points classification leader: Storm Ingebrigtsen (Team Coop-Repsol)
  • Best young rider: Storm Ingebrigtsen (Team Coop-Repsol)
  • Teams classification leader: Team Coop-Repsol
1 Storm Ingebrigtsen Team Coop-Repsol 4hr 6min 43sec
2 Matthew Brennan Team Visma | Lease a Bike @ 11sec
3 Tibor Del Grosso Alpecin-Deceuninck 0:13
4 Sebastian Molano UAE Team Emirates-XRG 0:17
5 Alexander Kristoff Uno-X Mobility s.t.
6 Tobias Lund Andresen Team Picnic PostNL s.t.
7 Karsten Feldmann Team Coop-Repsol s.t.
8 Tom Van Asbroeck Israel-Premier Tech s.t.
9 Mikkel Bjerg UAE Team Emirates-XRG s.t.
10 Fredrik Dversnes Uno-X Mobility s.t.
11 Alessandro Covi UAE Team Emirates-XRG s.t.
12 Anton Stensby Team Coop-Repsol s.t.
13 Per Strand Hagenes Team Visma | Lease a Bike s.t.
14 Ådne Holter Uno-X Mobility s.t.
15 Joshua Gudnitz Team Coloquick s.t.
16 Arjen Livyns Lotto s.t.
17 Huub Artz Intermarché-Wanty s.t.
18 Bjoern Koerdt Team Picnic PostNL s.t.
19 Martijn Budding Unibet Tietema Rockets s.t.
20 Vincent Van Hemelen Team Flanders-Baloise s.t.
21 Jan Christen UAE Team Emirates-XRG s.t.
22 Victor Langellotti INEOS Grenadiers s.t.
23 Henri Vandenabeele Lotto s.t.
24 Jonas Geens Team Flanders-Baloise s.t.
25 Vang Aas Eirik Team Coop-Repsol s.t.
26 Attila Valter Team Visma | Lease a Bike s.t.
27 Daniel Årnes Norway 0:26
28 Morten Nørtoft Team Coloquick 0:39
29 Peder Dahl Strand Norway s.t.
30 Kevin Vermaerke Team Picnic PostNL s.t.
31 Cedrik Bakke Christophersen Unibet Tietema Rockets s.t.
32 Brem Deman Team Flanders-Baloise s.t.
33 Jørgen Nordhagen Team Visma | Lease a Bike s.t.
34 Vegard Stake Laengen UAE Team Emirates-XRG s.t.
35 Wessel Mouris Unibet Tietema Rockets 1:03
36 Anders Skaarseth Uno-X Mobility 1:11
37 Malte Hellerup Team Coloquick 1:13
38 Alexander Kamp Intermarché-Wanty 1:25
39 Filip Maciejuk Red Bull-BORA-hansgrohe 1:46
40 Tim van Dijke Red Bull-BORA-hansgrohe s.t.
41 Maxim Van Gils Red Bull-BORA-hansgrohe s.t.
42 Anton Palzer Red Bull-BORA-hansgrohe s.t.
43 Jonas Gregaard Lotto s.t.
44 Even Thorvaldsen Lillehammer CK Continental s.t.
45 Felix Ørn-Kristoff Intermarché-Wanty s.t.
46 Hartthijs de Vries Unibet Tietema Rockets s.t.
47 Ludvik Holstad Lillehammer CK Continental 1:49
48 Rasmus Tiller Uno-X Mobility 1:51
49 William Blume Levy Uno-X Mobility s.t.
50 Tim Naberman Team Picnic PostNL 1:54
51 Artem Shmidt INEOS Grenadiers 2:08
52 Ward Vanhoof Team Flanders-Baloise 2:10
53 Toralf Rydningen Martinsen Lillehammer CK Continental 2:31
54 Ethan Vernon Israel-Premier Tech 2:39
55 Kiaan Watts Israel-Premier Tech 2:50
56 Kasper Haugland Norway 3:10
57 Jelle Johannink Unibet Tietema Rockets s.t.
58 Dylan Vandenstorme Team Flanders-Baloise 3:13
59 Elias Maris Team Flanders-Baloise s.t.
60 Tosh Van der Sande Team Visma | Lease a Bike s.t.
61 Arne Marit Intermarché-Wanty 3:37
62 Colby Lange Project Echelon Racing 6:25
63 Odd Christian Eiking Unibet Tietema Rockets s.t.
64 Toon Aerts Lotto s.t.
65 Emil Toudal Team Coloquick s.t.
66 Marius Innhaug Dahl Norway s.t.
67 Lionel Taminiaux Lotto s.t.
68 Halvor Dolven Intermarché-Wanty 6:31
69 Itamar Einhorn Israel-Premier Tech 6:42
70 Gal Glivar Alpecin-Deceuninck 8:48
71 Laurent Gervais Project Echelon Racing s.t.
72 Floris Van Tricht Israel-Premier Tech s.t.
73 Brage Aulstad Lillehammer CK Continental s.t.
74 Krists Neilands Israel-Premier Tech s.t.
75 Óscar Rodríguez INEOS Grenadiers s.t.
76 Thomas Gloag Team Visma | Lease a Bike s.t.
77 AJ August INEOS Grenadiers s.t.
78 Stan Van Tricht Alpecin-Deceuninck s.t.
79 Juan Guillermo Martinez Team Picnic PostNL s.t.
80 Kieran Haug Project Echelon Racing s.t.
81 Omar Fraile INEOS Grenadiers s.t.
82 Ethan Craine Project Echelon Racing s.t.
83 Lorenzo Rota Intermarché-Wanty s.t.
84 Johan Price-Pejtersen Alpecin-Deceuninck s.t.
85 Mees Vlot Team Picnic PostNL 12:54
86 Emil Herzog Red Bull-BORA-hansgrohe s.t.
87 Eduardo Sepulveda Lotto s.t.
88 Ryan Mullen Red Bull-BORA-hansgrohe s.t.
89 Rui Oliveira UAE Team Emirates-XRG s.t.
90 Simen Evertsen-Hegreberg Norway s.t.
91 Trym Brennsæter Norway s.t.
92 Henrik Fjellheim Lillehammer CK Continental s.t.
93 Georg Rydningen Martinsen Lillehammer CK Continental s.t.
94 Jonas Walton Project Echelon Racing s.t.
95 Laurens Sweeck Alpecin-Deceuninck s.t.

Stage 1 map & profile:

Stage 1 map

Stage 1 profile



Content continues below the ads

Advertise with us!

Start list with back numbers, Wednesday, May 28, 2025:

INEOS Grenadiers
1 Axel Laurance
2 AJ August
3 Omar Fraile
4 Victor Langellotti
5 Óscar Rodríguez
6 Artem Shmidt
Alpecin-Deceuninck
11 Tibor Del Grosso
12 Gal Glivar
13 Johan Price-Pejtersen
14 Lars Boven
15 Laurens Sweeck
16 Stan Van Tricht
Intermarché-Wanty
21 Alexander Kamp
22 Halvor Dolven
23 Arne Marit
24 Felix Ørn-Kristoff
25 Lorenzo Rota
26 Huub Artz
Red Bull-BORA-hansgrohe
31 Maxim Van Gils
32 Emil Herzog
33 Filip Maciejuk
34 Ryan Mullen
35 Anton Palzer
36 Tim van Dijke
Team Picnic-PostNL
41 Tobias Lund Andresen
42 Bjoern Koerdt
43 Juan Guillermo Martinez
44 Tim Naberman
45 Kevin Vermaerke
46 Mees Vlot
Team Visma | Lease a Bike
51 Per Strand Hagenes
52 Matthew Brennan
53 Jørgen Nordhagen
54 Attila Valter
55 Tosh Van der Sande
56 Thomas Gloag
UAE Team Emirates-XRG
61 Vegard Stake Laengen
62 Rui Oliveira
63 Mikkel Bjerg
64 Alessandro Covi
65 Jan Christen
66 Sebastian Molano
Israel-Premier Tech
71 Floris Van Tricht
72 Itamar Einhorn
73 Krists Neilands
74 Tom Van Asbroeck
75 Ethan Vernon
76 Kiaan Watts
Lotto
81 Toon Aerts
82 Arjen Livyns
83 Eduardo Sepulveda
84 Lionel Taminiaux
85 Henri Vandenabeele
86 Jonas Gregaard
Team Flanders-Baloise
91 Brem Deman
92 Jonas Geens
93 Elias Maris
94 Vincent Van Hemelen
95 Dylan Vandenstorme
96 Ward Vanhoof
Unibet Tietema Rockets
101 Odd Christian Eiking
102 Cedrik Bakke Christophersen
103 Hartthijs de Vries
104 Jelle Johannink
105 Martijn Budding
106 Wessel Mouris
Uno-X Mobility
111 Alexander Kristoff
112 Fredrik Dversnes
113 Ådne Holter
114 William Blume Levy
115 Anders Skaarseth
116 Rasmus Tiller
Norway
121 Daniel Årnes
122 Trym Brennsæter
123 IMarius nnhaug Dahl
124 Simen Evertsen-Hegreberg
125 Kasper Haugland
126 Peder Dahl Strand
Lillehammer CK Continental Team
131 Brage Aulstad
132 Henrik Fjellheim
133 Ludvik Holstad
134 Georg Rydningen Martinsen
135 Toralf Rydningen Martinsen
136 Even Thorvaldsen
Team Coop-Repsol
141 Vang Aas Eirik
142 Karsten Feldmann
143 Eivind Broholt Fougner
144 Storm Ingebrigtsen
145 Halvor Utengen Sandstad
146 Anton Stensby
Project Echelon Racing
151 Cade Bickmore
152 Ethan Craine
153 Laurent Gervais
154 Kieran Haug
155 Colby Lange
156 Jonas Walton
Team Coloquick
161 Joshua Gudnitz
162 Malte Hellerup
163 Adam Holm Jørgensen
164 Morten Nørtoft
165 Tobias Svarre
166 Emil Toudal