Ironman Worlds | Nice 2025

In early August 2025, at Ironman Ottawa, a dream came true when I qualified for the Ironman World Championship, scheduled to take place just six weeks later. I didn’t have to think twice and accepted the slot immediately. Two Ironman races within less than two months might not be the smartest idea, but after many years of racing experience, I couldn’t let that opportunity slip away. By mid-September, I found myself traveling to the Côte d’Azur, getting ready to compete in arguably the most iconic triathlon event in the world.

View towards Nice – a beautiful spot on the French Riviera.

The Course

Historically, the Ironman World Championship has always been held in Kailua-Kona, on the Big Island of Hawaii. But as the event grew, Ironman decided to split it across two locations and alternate genders each year: one year the men would race in Kona and the women in Nice, and the next year it would switch. 2025 happened to be a Nice year for the men.

While the Kona course is known for its heat and wind, the Nice route presents a completely different kind of challenge — 2,500 meters of climbing on the bike. That alone made it intriguing for me. I love riding in the mountains, even though I can hardly train for that kind of terrain living in Ottawa.

Swim: 3800m in 1h21m

Unlike most other triathlons I’ve done, this race featured a traditional mass start by age group. Instead of self-seeding based on predicted swim times, each age group started together.

At 7:30am, everyone aged 40–44 made their way down the rocky beach into the warm, calm Mediterranean waters, floating between two large black buoys. Wetsuits weren’t allowed, with the water temperature well above 24.5°C.

Athletes lining up for a mass swim start, organized by age groups. The ocean was very calm, and too warm for wearing a wetsuit.

I positioned myself at the back of the 350-strong field, unsure what to expect. My goggles were clear and tight, I had plenty of anti-chafing cream on my neck, and I spent five nervous minutes floating and waiting for the horn.

Then it began — the loud signal marking the start of the race I’d trained and dreamed about for years. The moment felt surreal, but that quickly gave way to the chaotic reality of a mass start.

My age group waiting for the swim start, while in the background other age groups are already half way done.

Hundreds of swimmers all around me — saltwater splashing, arms flailing, legs kicking. I remembered my past swims in Lake Placid and Muskoka, where I’d had mild panic attacks in calmer waters, unable to keep my head down. This time, though, I managed to find a rhythm despite the waves, splashes, and chaos.

Every few strokes I sighted ahead, and thankfully the swell wasn’t too bad. Around 700 meters in — near the first turn buoy — things started to calm down. The field had spread out, giving me space to actually enjoy the swim. The clear, deep-blue water looked stunning, though no sea life was visible (unlike Cozumel last year). I did spot one large, bright red jellyfish, which startled me but thankfully kept its distance.

Nice from above: calm ocean on the left, and hilly terrain in the background.

Each age group had its own cap color, and after about a kilometer, they started to mix. Fast swimmers from later groups occasionally surged past, creating temporary turbulence, while I passed slower swimmers from earlier waves. It didn’t bother me; I was just happy not to feel chafing or cramps and to be navigating well.

The final 200 meters were the best — the beach came into view, the crowd’s cheers grew louder, and I finished the swim with a huge smile, feeling fresh.

Bike: 180km in 6h14m

Transition was crowded — the changing tent smaller than what I was used to. I found a spot and took my time: applying chamois cream and sunscreen, drying my feet, putting on socks, shoes, helmet, gloves, and sunglasses, and taking a sip of Powerade. It all took about ten minutes, plus another few minutes of jogging through the long transition zone to reach my bike.

Transition 1 and 2 right at the beach. Likely one of the best views you can get while transitioning from one sport to the next.

The first few kilometers followed the coastline — flat, smooth, and perfect to settle in before the climbing began. Soon enough, the route turned north, and after just 10km, the ascent started — steep, with short ramps hitting 15%. Not something I was used to on a TT bike!

Over the next 20km, the road climbed steadily into the mountains. I passed riders continuously — one of the perks of being a slower swimmer but stronger cyclist. The higher we climbed, the more breathtaking the scenery became. The ocean glimmered far below, and the views expanded with every turn.

Bike course: amazing views and relentless climbing.

The toughest part came around kilometer 40: a 20-kilometer climb to 1,100 meters elevation. Something I simply can’t train for in Ottawa, but I loved every minute of it. With a 34 cassette and a steady rhythm at around 17 km/h and 2.9 W/kg, I powered my way up. The dry, open landscape made it easy to see the road winding above and below, dotted with hundreds of athletes grinding their way up. It was spectacular — seeing riders far in the distance and realizing where I’d come from just minutes earlier.

Views after each turn. This picture was taken on a training ride, a couple days before the race.

Knowing that most of the climbing was done after that massive ascent helped mentally. The next 60 kilometers rolled along scenic, quiet roads with little wind and great pavement. I found my flow and kept thinking how incredible it was to be racing a World Championship.

Around 110km, the descent began. I was a bit nervous — unsure how steep or technical it would be — but it turned out to be smooth and flowing rather than tricky. Still, I passed several crash sites where riders had clearly misjudged corners; emergency crews were stationed at the tightest turns.
I felt confident descending, enjoying the recovery while still moving fast. After one final climb, the last 30 km back to Nice flew by.

More views across the sea. Looking around was the most enjoyable part of the 180km bike ride!

As I approached the coast again, I started mentally preparing for the run. I increased my cadence and eased off the power. The final stretch followed the promenade, giving a preview of the marathon route. It was getting busier with riders, and I saw a few officials handing out drafting penalties — a good reminder to stay disciplined and save energy for the marathon.

Run: 42.2km in 4h08m

The run course was simple but beautiful — four loops of 10 km each along the Promenade des Anglais: 5km out, 5km back, flat and fully exposed. I love this type of layout; it breaks the marathon into manageable chunks, and the constant presence of spectators and oncoming runners keeps you mentally engaged. In contrast, some other Ironman races (like Lake Placid, Florida, or Penticton) have long, lonely sections that can feel endless.

The run course would follow Nice’s coast line for 5 kilometers out, and 5 kilometers back, which had to be completed four times.

I felt surprisingly good coming off the bike — relieved to have finished safely and eager to get moving. After a quick transition, I headed out on the run course, surrounded by athletes already several loops ahead. The atmosphere was electric. Seeing my parents, who had traveled to Nice to watch me race, gave me a big emotional boost.

The first 10km loop went by quickly. I ran by feel rather than by watch, averaging just under 5min/km with a heart rate around 160bpm — steady and sustainable. At each aid station, I grabbed electrolytes and Coke to stay hydrated under the hot sun. The biggest challenge turned out to be the strong headwind on the return section, which grew stronger each loop.

We took this picture pre-race, so my parents would know what I was gonna wear on the run. Apparently it helped them to spot me multiple times.

By the second loop, around 18km, my stomach started cramping, forcing me to slow down and take walking breaks. I expected this might happen, so I didn’t let it affect my motivation. After all, this was the World Championship — and I was determined to enjoy every moment. As long as there was no real pain or injury, I was fine with walking when needed.

By kilometer 32, I started feeling much better and was able to pick up the pace again. The final 10km were strong, with just one short walk break. After 12 hours and 6 minutes, I crossed the finish line — exhausted, grateful, and incredibly proud to call myself an Ironman World Championship finisher.

Finished the World Championship in 12 hours and 6 minutes.

Stats

Some stats compared to my personal best just six weeks prior in Ottawa:

  • Swimming 3.8km: 1h21m (+2min)
  • Transition 1: 11min (+4min)
  • Cycling 180km: 6h14m (+71min)
  • Transition 2: 12min (+6min)
  • Running 42.2km: 4h08m (+15min)
  • Total time for 226km: 12h06m (+98min)

Nutrition strategy and consumption:

  • Breakfast: Bread with Nutella, 1 banana, 1 cookie, coffee
  • Pre-race: Banana, 1x Maurten 100 gel, 1 cookie, 500ml water, 500ml Powerade
  • On the bike: 700ml water with 400cal Tailwind in front, 400ml water with 800cal Tailwind in center, 700ml Powerade, 1 Clif bar, 1x Maurten 100 gel, 3x Maurten 160 gel, 500ml electrolyte drink, 2100ml water
    (total of 490g carbs on the bike = 80g carbs/hour
  • On the run: 500ml Powerade, 10 cups of coke, 15 cups of water and electrolytes, 1x Maurten 160 gel
  • Post-race: 500ml Powerade, cookies, pasta, 150ml coke, 500ml water
Back home in Canada, Tara surprised me with a celebratory cake to properly refuel!

Aftermath

Participating in an Ironman World Championship event after ten years of dedicated training and racing was an unforgettable experience. The atmosphere in Nice was unbelievable, the course spectacular, and the competition strong. And while it is generally not advised to do two Ironman triathlons within just six weeks, it worked quite well for me; a decade of endurance sports experience and a very good base fitness definitely helped.


2 Comments

Leave a Comment to dylan Cancel Reply

en_US