
Every other year, while browsing through available races, I’d inevitably find myself on swisspeaks.ch. The race takes place in Switzerland in September and looks absolutely stunning – everything seemed perfect on paper. But then reality hit: 168km, 10’990m of elevation gain, and 13’000m of elevation loss. The numbers alone sounded completely insane, and most of the course would wind through challenging alpine terrain. While I love a good challenge, I’ve always tried to stay realistic about my limits, so I’d quickly dismiss the idea of actually signing up.

But 2025 was different. I had just completed my first 100-miler in 2024 with the Nice Côte d’Azur race by UTMB, and in spring 2025, I achieved another major running goal by finishing the Zürich Marathon in under 3 hours. With these milestones behind me, I found myself free from concrete goals and genuinely ready to tackle something truly challenging. I was craving a race that would push me to my absolute limits – up until then, my races had gone relatively smoothly, and I’d never been in real danger of a DNF. So I did what any sensible runner would do: I signed up for the iconic Swiss Peaks 170.
Training and Preparation
At the end of June 2025, I ran the Lavaredo Ultra Trail 120km, followed by a well-deserved 10-day vacation in Italy. This meant I didn’t resume training until around July 10th for the early September Swiss Peaks start date – giving me exactly 8 weeks and 3 days to prepare. Since I already had a solid base from my training throughout the year, I decided not to focus on high volume but instead concentrate on race-specific preparation: tackling serious elevation gain and loss. I also mixed in some weekend hiking to round out the training.
As you can see, I peaked at 140km in my highest volume week, capped off the training block with a 42.3km long run, and then settled into a solid 2-week taper. For elevation, I maxed out at around 4’000m of gain in one particular week, while most others hovered around the 3’000m mark.


Planning for an ultra of this magnitude – with its variable terrain and unpredictable weather – is no simple task. As always, I created three different race plans: A, B, and C, targeting finishing times of 32, 36, and 40 hours respectively.
Before the Race
The race starts in a pretty remote location: at Europe’s largest dam, Barrage de la Grande Dixence, sitting at 2’364m above sea level. You have two shuttle options from Bouveret at the Lake Geneva – either at 17:00 the day before the race or at 5:30 on race morning to make the 10:00 start. I opted for the earlier shuttle and booked a room at the hotel near the dam. Pro tip: book early, as accommodation fills up fast.
After picking up my bib at 15:00 in Bouveret, I walked the 20 minutes to the shuttle departure point and grabbed some supplies at the local supermarket. The drive up to Dixence took longer than expected – we started late and made a few stops along the way. I finally checked in around 19:15, just in time to catch the tail end of the 19:00 dinner service. Fortunately, there was still plenty of space and the food was surprisingly good.

During dinner, I chatted with some other runners. One of them had already tackled both the 380km and 170km versions of Swiss Peaks – quite the veteran! Eventually, conversation turned to rumors that the race might be temporarily halted tomorrow due to thunderstorms forecasted for early evening. Around 20:30, we received official confirmation via email and SMS: the race would be neutralized at Lourtier (the 2nd aid station at 20km), with a mandatory waiting period from 17:30 to 22:00, followed by a mass restart. Essentially, it would run like a stage race – your arrival time in Lourtier would count, then the clock would reset at 22:00 for the mass start. Interesting approach, and honestly, it didn’t bother me much. Safety comes first.
Since I’d booked a room with a private bathroom, I had my peace and quiet for a good night’s sleep. The breakfast was solid too, and I made sure to get some coffee in me to properly wake up for the day ahead.
The Race
There are two ways to get to the starting line on the dam: you can take the cable car, or walk up. It’s a 1km climb with 230m of elevation gain, and I decided to go for the walk! I dropped my baggage, plus the drop bag, at the hotel where they were loaded onto a truck. My main baggage would be transported back to Bouveret – hopefully where I’ll be finishing! The drop bag will be available at Lourtier during the break, and then at the two official life bases along the course.
Start to Stop
It had started to rain on the dam, but it stopped a few minutes before the start. The organizers then explained again the reasons for the stop in Lourtier. They could have merged us with the 100km runners, but they wanted to give us the full 100-mile experience – and that’s what we signed up for! Everything has been well organized and clearly explained so far.

The start was delayed by 30 minutes for various reasons. At 10:30 we finally set off, beginning our first climb from 2364m up to the highest point of the course at 2985m. I kept my poles attached to my running bag for the first few minutes to navigate the crowd. It’s good to say the start, with around 230 people, was surprisingly pleasant – a far cry from the 1600 at Lavaredo! After leaving the dam, the climb began immediately, which quickly stretched the runners out. I was happy with my position and aimed to ease into the race, maintaining a pace of around 10:00 min/km. I adjusted my tactics slightly, deciding to push a bit harder over the first 20km. We’d have plenty of time to recover during the break afterwards, so it made sense to bank some time here.

The climb was rocky, and eventually we reached a plateau. Even there, the terrain was quite technical, but I stayed focused and managed to stay on my feet – a definite improvement over the three falls I took in the first hour of my last ultra! Shortly after the highest point, we reached a water station. There were two volunteers handing out water in bottles. I refilled one flask before continuing on towards the Grand Desert. There were some rocky sections requiring climbing, but early in the race, it didn’t bother me too much.

After a few more minutes, I reached a single-track trail that was a little less technical, allowing us to run for a bit before the biggest downhill of the race. That downhill was tough – 1600m of negative elevation over 6.5km in the main section. One thing I’d promised myself for this race was to push harder on the downhills. Somehow, I managed it without my quads screaming too much, and eventually reached a paved road where the terrain began to flatten out.
I arrived in Lourtier around 13:45 for the big break. I was ranked 34th at that time, which allowed me to find a good spot in the gym. I grabbed a mat near the wall and took advantage of a power outlet to charge my phone and watch. I couldn’t really sleep, but I managed to relax and recover from the long downhill. Lourtier is located in the Val de Bagnes, and anyone familiar with Switzerland and Valais knows the region is famous for Raclette. It might not be the best fuel for running, but I still had around 5-6 hours before the race restarted, so I enjoyed a small portion of the famous cheese dish. A big thanks to the fantastic volunteers!


Eventually, I moved from the gym to another room to sit at a table. I started chatting with fellow runners from Zürich, Ticino, and Hong Kong. It was a more pleasant atmosphere than at UTMB races – maybe partly because we all needed a break! A thunderstorm was passing by, and we were all glad not to be high up in the mountains at that time. Around 19:00 we were called back to the gym, where they explained that the race would continue with a mass start at 21:00. The cold kit was activated, meaning we had to carry it. Luckily, I found enough space in my 12l running vest, so I packed my waterproof overpants and an extra warm down jacket. Some runners started putting on the overpants, but there was a 1000m climb over the next 5km. It didn’t make sense to me – I’d overheat, even in the rain.
Getting into the first night
After a seven-hour break – at least for me – we headed out into the night for a second start to the race. There was still a 150km ultra to go after this 20km “sky race”. The climb was steep, as expected, so I was glad to reach the aid station after just a few kilometers. After that, the trail became more runnable – still a single track with ups and downs, but no major climbs or descents, except for the final section to Mont Brûlé. The descent from Mont Brûlé was also fairly runnable, and much of it took place on forest roads. That’s when my stomach started to rebel, and I was relieved to take a small break at the next aid station in Prassurny to recover.
What followed was the climb to Fenêtre d’Arpette. 1500m up over 10km, and the terrain gradually became quite rocky. It got steeper and steeper, and we were soon climbing from rock to rock. The hardest part wasn’t the physical exertion, but the darkness. I couldn’t see the top, and it was difficult to gauge how much further we had to go. I caught glimpses of headlamps ahead, which eventually disappeared – they must have reached the summit. Eventually, I did too, feeling a sense of accomplishment despite the fatigue.
The descent to Col de la Forclaz brought a welcome end to the night, and I was able to turn off my headlamp. A longer, flatter section followed alongside the famous historic Bisse (water transport system). This is were I was faster again and overtook some runners. Reaching the aid station required some careful navigation through muddy terrain for the last 100m – I was relieved to stay upright. I grabbed some bread with honey for breakfast and headed out for the next climb a few minutes later, wondering what challenges lay ahead.
Green with light rain
For the next section, I found myself running alone for at least an hour. It wasn’t a blistering pace, but I wasn’t being overtaken either – a solid, steady effort. On a flat section, I had my first fall of the race. Luckily, it wasn’t serious, and I was able to get back on my feet and refocus.

I reached the first life base in Salvan around lunchtime, and thankfully, the sun had come out and the rain had stopped for a while. I took a longer break there to eat some pasta. We were allowed to continue without the cold kit after this life base, so I removed it from my running pack, which made my vest a bit lighter. That was good timing, as we were immediately faced with a 1600m climb to Col de Susanfe, reaching 2493m, with an aid station around 1900m.

A large part of the climb consisted of stairs – a surprisingly welcome change. It offered a break from the usual climbing and allowed different muscle groups to work. I switched both poles into one hand and used the other to steady myself on the rail. At times, it felt almost canyon-like, with water rushing underneath. Eventually, the stairs gave way to a double track, and a few minutes later, I reached the Auberge de Salanfe aid station – a large building with a small aid station tucked away on the ground floor.

I left the aid station a few minutes later and gratefully enjoyed a flatter section. The rain had definitely stopped, and I was able to shed layers, reducing to just a t-shirt – a welcome relief after the earlier, wetter stages of the race.

The climb that followed was steep, but thankfully not as demanding or technical as Fenêtre d’Arpette. As usual on climbs, I felt strong and was able to keep pace with one of the runners from Ticino I’d chatted with earlier. Reaching the top, we encountered a small, windswept ridge, and I hurried to move on.

Struggle
The downhill that followed proved difficult again. I fell once, hitting my elbow, and while it wasn’t serious, it definitely rattled my concentration. After the downhill, I slogged through some muddy terrain before finally reaching the Barme aid station at 102km. I took a fifteen-minute break, but I was shivering a bit and my nutrition wasn’t sitting well the last hour. I sent a few messages to those supporting me, then planned to push on to Morgins, the second life base 20km away, hoping for a longer break to replenish my energy. Easier said than done. As you can see in the pictures below, the terrain wasn’t letting up. The slowest section was probably the downhill secured by chains.

Reaching Morgins during daylight was becoming increasingly unrealistic the longer this section took. I climbed again after Barme, had a quick phone call with my girlfriend, and met a French runner along the way. There was a flat section for a while, but I didn’t feel much like running. So, we alternated between running and power hiking. We missed the water station at kilometer 112, but it didn’t matter too much – I still had enough water. Soon after, the downhill began, and with it, the sun set, forcing me to pull out my headlamp for the second night. It flashed three times shortly after, then again a few minutes later. Better to change the battery. Another break that further delayed my arrival at Morgins. But at that point, I’d managed to eat a bit better, and a flat stretch down in the valley (at 1400m) stood between me and the next life base.
I promised myself I’d run this section. It would have been beautiful in daylight – the path followed a river, and we crossed small bridges seven or eight times. Around 21:00, I finally reached the life base in Morgins, after what felt like an eternity. My watch showed over 122km, which had made it harder, as I was expecting the base to appear shortly after the 122nd kilometer. Anyway, now it was time for a break. I ate rice with vegetables and tried to calm down, then planned to sleep for 40 minutes. I took my sleeping bag from the drop bag and headed upstairs with my phone and the alarm set. In one of the rooms, I found an empty bed. Only one other runner was in the same room – probably one of the 380 or 700km Swiss Peaks competitors. He was sleeping. I didn’t want to disturb him and quietly settled into my sleeping bag. Simply lying down was helping. I don’t know how much deep sleep I actually got – maybe ten minutes – but lying flat and releasing the pressure on my legs for forty minutes felt amazing! I got up and went downstairs for a coffee.
I spent some time in the room downstairs, drinking and eating. As is typical at Swiss Peaks, they offered local food from Valais, and the volunteers were incredibly helpful. The runner from Ticino I’d seen earlier said goodbye and headed out, just as a German runner I met during the long break in Lourtier arrived. He looked tired, but he’d already completed the 380km once, so he was a very experienced runner and I was confident he’d make it. I pointed him towards the sleeping places and slowly began getting ready to dash out into the night around 23:00. Isn’t it crazy to leave a warm, cozy place and start running so late in the evening? It was, but I wasn’t struggling with sleep deprivation at this stage. The coffee helped, and I also took some gels with caffeine. The key was likely that I’d had very good sleep the nights before the race.
And uphill to Conche it was. I was hoping the rest of the race would be easier – only 46km with 2460m of ascent and 3430m of descent remaining, and we wouldn’t climb above 2000 meters again. Later, I’d learn that didn’t quite pan out. Anyway, I felt much better, and the distances between aid stations were getting shorter in this later stage. After only 6km, I reached Conche and headed out quickly after a few minutes. Another 300m climb brought us onto a ridge, but it was difficult to run – spiked with rocks. We ran through the area of a ski resort, so at least part of it was runnable after the ridge. A little up and down, and I reached the next aid station, titled Chalet de Blancsex – though it wasn’t a chalet, just a small white tent. It was 3:00 AM and cold. I took a bouillon in my cup but started shivering heavily. The volunteers were kind and brought me closer to their small oven and gave me a warm blanket. It helped a bit, but I knew I had to get out and moving. So, after a few minutes, I grabbed my poles again and started the next climb. I was shivering and breathing heavily at first, trying to raise my body temperature, but after a few minutes, I relaxed again and warmed up. I’d put on my race leggings at the last aid station, but they didn’t allow me to move comfortably, so I took them off again. Another few minutes lost for a silly decision. Taney was the next aid station, and I didn’t want to linger there, not moving. There was one last 400m uphill – the final significant climb. I really enjoyed the landscape now – it was softer, and we’d be running on a double track.
The sun comes out
The section at the top was flat and a few minutes after it I started the downhill, and the sun rose. I’d successfully navigated the second night – no falls, no major issues apart from the cold. What really lifted my mood, though, was the sight of Lac Léman. The finish line was located at that lake, and it was now in sight – not the finish line itself, of course, but at least the lake. And now I was certain – I could make it. I could really finish this incredibly tough 100-mile race. Before the race, I’d told myself that a DNF was certainly a possibility. I’d never DNFed before in any of the six ultras I’d run to that point, but Swiss Peaks was a level above everything else I’d done so far in terms of difficulty – more climbs, distance, downhills, technical terrain, and alpine conditions than anything before. But I was also as fit as I’d ever been.

What also helped at this stage was that the people supporting me were awake again. I received more encouraging messages – they were delighted that I’d continued after Morgins and was progressing well through the second night. During the downhill, I heard something rustling in the grass. I turned to my right and saw an ibex! I was very happy to see one – I’d hoped to spot one early in the race.

It was only the second time I’d seen a wild one. It’s the heraldic animal of my home canton. However, I didn’t want to disturb him too much and continued my downhill. The next section was then really frustrating – a single trail through the forest that wasn’t easy, full of stones, roots, and wet patches. At that stage, it annoyed me. Come on, I’d already shown I could run in tough terrain – why did it need to continue like this? At the last aid station, I took a five-minute break and refilled for the final 11km.

At least those last kilometers had some easier sections – a wide downhill in the forest that was quite runnable. Well, running at that stage meant a pace of 7:00 min/km, and I was motivated to finish in under 40 hours. I ran into Bouveret, where the finish line was located and where I’d picked up my bib three days before. There wasn’t a direct path to the finish line, though – first, a big turn to the left. Finally, I reached the train station, from which it was only one kilometer to the finish line, and I started to speed up. People were cheering, and I had a clear sight of the finish line now. One last paved path straight towards the lake, and I crossed it. I’d really made it – 173km with 11,055m of elevation gain and 13,012m of elevation loss in 39h 48m.
I finished 35th and was quite happy with it. Although the main goal was simply to finish, I was glad to have done so in a reasonable time.

After crossing the finish line, not much happened. One person at the table with drinks and food cheered for me, but there wasn’t much activity around. It didn’t matter, though, because I ran this race for myself and the people who supported me from home. I took a slice of cheese and a water and walked further. Then they explained that they were having issues with the production of our medals and would send them home. I did receive a running vest as a finish gift, which was nice. I made a few calls and quickly congratulated one of the French runners I’d met earlier when we missed the water station.
After the Race
I collected my baggage and drop bag and headed for a shower and change of clothes. The train journey home took almost four hours. I slept a bit during the ride, setting my alarm clock to make sure I didn’t miss any connections. When I reached home, I quickly talked with my girlfriend before going to bed for a two-hour nap before dinner.
My physical recovery after the race was quick. Already the next day, I went for a short walk in the forest to get my legs moving, and it felt fine. Mentally, I was a bit off, perhaps due to the sleep deprivation or just the sheer effort. However, that improved eventually. I didn’t run the week after the race, but we went for a two-day hike (38km in total) seven days after my finish. I was skeptical at first, but the hike wasn’t a problem at all. I enjoyed some good wine and food – a refreshing change, as I’d been very focused on nutrition in the weeks leading up to the race. Normal life was back, time to relax and see friends more often. No more races until the end of the year, probably!
A huge thank you goes to everyone who supported me during the race. Without you, I might not have finished it.