
I was lucky enough to have a positive draw for the Lavaredo Ultra 120k in 2025. This race was interesting for me because it’s in a neighbouring country of Switzerland and the landscape looks truly amazing. I’ve heard about the beauty of the Dolomites many times and wanted to see it myself. On the other hand 120 km was a weird distance. It’s not a 100k, but it’s also not a 100 miler which makes it hard to plan.
Before the race
The training
In mid of April 2025 I ran the Zurich Marathon as every year. The first marathon where I managed to go sub 3. So, I had a great base already because training for that marathon started during November 2024. In my RunningCOACH app I had defined Lavaredo as preparation race because the Zurich Marathon was a main event, i.e. A race, for the year. And I had the idea to go for the Swiss Peaks 170k in September as another A race. Therefore the training for Lavaredo looked a bit less intense. My peak week was only 113km with 3238m of elevation gain. Nevertheless it was quite specific with more elevation gain than I do usually and I felt confident.

The course and my strategy
Some ultras have their highest peaks in the beginning and are less challenging in the end when you’re getting tired. The Lavaredo 120k is a bit mean because the last 40k are probably the most challenging of the whole course.

As always before an ultra, I prepared my pacing strategy with ultrapacer.com. I then copied over the strategy to my own excel and listed three variants, A, B and C. In that case it was 16 hours for A, 18 hours for B and if a lot goes wrong I was ready to be underway for 20 or even more hours.

For each of the sections I also calculated fluid, food, and sodium intakes. I usually use products of Precision Fuel & Hydration.

This A, B and C variants help me to get an idea about how fast I can go and what I should consume. However, I’m well aware that everything will be different anyway. It’s just about getting into the right areas. Then I would need to adapt on race day and manage myself well on the course.
The day before the race
After a stop in the Val Mustair we’ve reached Cortina in the beginning of the afternoon on Thursday before the race start on Friday. Other distances were run that day, I believe the 20k. And generally it was a lot of traffic. But finally we’ve reached our hotel Villa Alpina in Cortina and luckily we had an own parking. The hotel was great with a comfortable room. In hindsight however I would have probably chosen a hotel or apartment even a bit farer away from the centre of Cortina to avoid the single lane traffic.
On Thursday evening we went to a Pizzeria outside of Cortina. After 20 minutes of slowly progressing through the streets of Cortina we’ve finally managed to find a road without that much traffic and could drive in normal speed. I’m really wondering how the traffic situation will be in Cortina for the Olympic Games of 2026. Anyway, the pizza was great and we managed to get back to the hotel to get some good sleep the night before the race. Thunderstorms were approaching and there was even hail that evening. I only hoped it would be better the next day. After the Mozart 100 the year before I didn’t want to have another race with constant rain.
On Friday I tried to relax as much as possible before the 23:00 start. I went to the centre of Cortina to buy an emergency blanket, I’ve got my bib in the ice hockey stadium, and ate some pasta for lunch. An 23:00 start was new to me and I researched a bit how to approach it. In the end I tried to have a 2 hour nap in the afternoon, but I didn’t want to mess too much with my sleep schedule.
What did I pack
In my last 100 miler I had too much in my backpack and I wanted to be more lightweight this time. I mainly took the mandatory equipment with me as the weather looked quite stable. It wouldn’t be too hot nor too cold. Sun screen to apply in the morning I’ve packed nevertheless because it should be sunny the whole Saturday. In my drop bag for km 67 I had another pair of shoes (NNormal Tomir 2.0), T-Shirt, socks, shorts, and more gels as well as energy chews from Precision Hydration. The shoe to start the race was the Hoka Tecton X3.

The race
I knew that around 1700 runners would start and wanted to be at the starting line early to have a good position. My goal this time was to be in the top 10-20% from a ranking point of view. Having the overtake a lot of people in the beginning wouldn’t be ideal. Still as the race would be long there would be plenty of time to compensate and speed up later should I not have a good position in the beginning.
So, I arrived around 22:15 at the starting line and it was already packed. I managed to find a position somewhere in the middle and settled for that. Waiting 45 minutes in a huge crowd wasn’t my favourite moment, but it went over quickly and at 23:00 the first wave could start already. Time was measured from the moment that a runner was crossing the starting line. So, no problem with that. And to really improve the experience they’ve built kind of a cone with the help of barriers. Basically a single runners was allowed to cross the starting line at a time. Lots of people were still out there in the evening cheering the runners on in the first few kms which was a great experience.
Cortina d’Ampezzo – Ospitale
Stats: 18.7 km, 833 m+, 560 m-
(11.6 miles, 709 ft+, 2,208 ft)
At 23:07 I was crossing the starting line and head out into the night. Around 6 hours until sunrise and I hoped that the cool night (15-20 degrees Celsius, 59-68 Fahrenheit) would be pleasant to run. Although the start had happened in waves the trails were crowded quickly and it was a bit too slow for me on the uphill. I tried to remain calm and overtake sometimes when it was safe. I also didn’t use my poles for the first uphill. Because I could move better without them while being near to other runners.
Soon the downhill started and I had my first fall. I tripped and stopped my fall with my two hands and the left knee. A little cut in the knee and some blood on my hands, but I was fine. I thought about maybe getting a plaster or tape on the next aid station, but wanted to continue as quickly as possible to not loose the positions I gained during the uphill. It seemed I was really struggling a bit and didn’t concentrate as much as needed. Because I had another 2 falls until midnight. I thought, it can’t be possible! Lift your legs and run properly!
Anyway, I was worried about the aid station to be overcrowded, but it was just fine. In the end I’ve reached the Ospitale as first aid station after a bit more than 2 hours and was perfectly in plan. A short refill of water and two pieces of banana and I was already on my way. This time I really didn’t want to waste any time at the aid stations as long as I was feeling fine.
I even forgot to take case of my cuts, but it was just fine and the blood dried. Anyway, I said to myself you will surely not fall a 4th time! At the end of the race it was 5 times. But all okay.
Ospitale – Passo Tre Croci
Stats: 9.2 km, 661 m+, 346 m-, (total 28 km, rank -59)
(5.7 miles, 4,606 ft+, 108 ft-, total 10.6 miles)
A longer uphill followed up to 2100m before the first downhill that was a bit more tricky. Still all quite easy and this time I managed to gain some positions. As always, the uphills go quite easy for me and I struggle more on the downhills. Another aid station with another quick refill. And two minutes later I was already out on the trail again.
Passo Tre Croci – Federavecchia
Stats: 6 km, 72 m+, 487 m-, (total 34 km, rank +21)
(11.8 miles, 1,207 ft+, 6,715 ft-, total 22.5 miles)
I don’t remember much of this 6km section towards Federavecchia. It was mostly downhill and that is why I lost some positions. But overall I still felt great and recovered a bit.
Federavecchia – Misurina
Stats: 8.5 km, 573 m+, 194 m- (total 42.6 km, rank -19)
(7.6 miles, 2,381 ft+, 2,933 ft-, total 30.1 miles)
Towards Misurina I could again gain some places and it started to get brighter too! Birds were chirping and the sun would soon rise. Also here quick refill and grabbing some abricots, cheese and waffels. Then I went onwards to tackle the section that would lead us to the highest point of the race at around 2500m.

Misurina – Rifugio Auronzo
Stats: 7.2 km, 601 m+, 55 m- (total 49.8 km, rank -30)
(8.4 miles, 3,116 ft+, 3,162 ft-, total 38.6 miles)
We ran alongside a beautiful lake when we left Misurina. This was were I was checking my rank the first time on my mobile and saw 259! It was hard to judge where I was just from feeling. Therefore it was a bit a surprise to me that I was positioned that well. This motivated me even more and I tried to stay ahead for the rest of the course. Nutrition-wise I went with a Precision Fuel 30g carbs gel every 30 mins combined with some additional carbs from the aid stations that should bring me closer to 80g per hour. This was working so far and I was happy with how the night went.
A fellow runner mentioned now that it will be cold up there. I was still with my T-Shirt only and hoped I could stay like that. For now anyway it was all uphill and not too windy. So, I felt fine.

Terrain became more rough but also more beautiful. Now really the dolomite peaks were visible. And soon we would reach the famous Tre Cime. The Rifugio Auronzo was a simple aid station with liquids only. I took hot tea to make sure I stay warm and had a two minute break to take some pictures. The sun came up and lit up some parts of the mountains around us which was an amazing view.
Rifugio Auronzo – Forcella Lavaredo
Stats: 2.6 km, 161 m+, 15 m- (total 52.5 km)
(5.3 miles, 2,572 ft+, 1,062 ft-, total 43.7 miles)
A very short section brought us finally in front of the Tre Cime. And the photographer did a good job here. I took my poles in one hand because here it was rather flat and soon the downhill would start.

I stopped for two minutes then at the beginning of the downhill to put my head torch from the front pocket back into the running pack. Hopefully I wouldn’t need to run another night and would arrive in Cortina in the early evening when it was not dark yet and a lot of people would still be cheering on the finish line. I’ve also put the poles back underneath my running vest where I pulled some cords to make sure they don’t move. I tried quivers before, but found this variant more convenient.
Forcella Lavaredo – Cimabanche
Stats: 15 km 137 m+, 1060 m- (total 67.5 km, rank +2)
(9.4 miles, 4,005 ft+, 1,564 ft-, total 53.3 miles)
A long downhill followed and I took some more risks to not be too slow. This went quite well and after the downhill I could overtake some other runners on the slight uphill towards Cimabanche. This was probably the largest aid station. Generally the aid stations were very well organised and there were lots of volunteers who did an amazing job. The selection of food that was available was good. As so often during ultras, I went for Coca Cola besides water.
Here I’ve also got my drop bag from a volunteer and changed my shirt. As the Tecton X3 felt a bit hard underneath my foot, I also changed to the Tomir 2.0. I stocked up again with gels and energy chews to be ready for the second half. I wanted to be at Cimabanche between 7 and 9 in the morning. I’ve reached it around 8. So, from a planning perspective I was still quite good. Out and onto the next uphill!
Cimabanche – Malga Ra Stua
Stats: 9.6 km, 533 m+, 359 m- (total 77.1 km, rank +1)
(9 miles, 764 ft+, 3,795 ft-, total 62.2 miles)
The section towards Malga Ra Stua was pleasent. Still not too difficult or technical. I saw some wild horses on the fields and eventually reached the aid station. It was getting a bit hotter. That’s why I filled on flask with electrolytes. In the past I sometimes had stomach issues from a too strong mix. I went with 500mg of Sodium for the 500ml flask and felt fine with that. What worried me more was the view of the next section. 20.4 km with 1297 elevation gain. Other runners were discussing it as well and mentioned that there would be a small aid station after 13 km where water was available. Here I applied sun screen to not get burnt during the next few hours. Two thirds of the course was done. I felt the effects a bit from going rather fast in the beginning. I was wondering if it was too fast and I would pay for it in the end.

Malga Ra Stua – Malga Travenanzes
Stats: 13.4 km, 802 m+, 522 m- (total 90.5 km, rank +37)
(7.4 miles, 1,190 ft+, 2,034 ft-, total 69.6 miles)
In race reports I went through before the race, I read that the race would get more difficult after Malga Ra Stua. The beginning involves a downhill before it would then go up until 2300m. On that downhill I tripped again and landed on my hands again. Nothing too serious, I was a bit frustrated though with my inability to run properly. Other runners were again faster than me and I lost some places. I met a French runner that usually does a lot of road running. We had a short chat before he went ahead. I told him, I was going to wait for the next uphill to speed up. He was certainly happy with the flatter section.

It became more rocky and more technical. We crossed a huge scree field and some streams. Luckily there was always water available too cool down. Before we were often running in small valleys or in the shade of trees. But now on this section we were really exposed to the sun and the heat that comes with it. On the uphill we finally reached Malga Travenanzes where a fountain was available for refill and another cool down. I’ve put my hat into the water and back onto my head and continued through rocky terrain.
Malga Travenanzes – Col Gallina
Stats: 7.1km, 495 m+, 422 m- (total 97.7 km, rank -7)
(4 miles, 2,916 ft+, 396 ft-, total 73.7 miles)
We would now reach 2000m above sea level and stay above that level until the last downhill towards Cortina. The terrain became more difficult to run and sometimes the feet lost grip because of small stones. You might think it looks easy on the course profile, but here you could be in for a surprise. The uphills are not very long but steep.

Besides that the view was incredible and as it was an uphill I could gain some positions again. Eventually I met the French colleague again and he was really struggling on this section while I found it hard, but enjoyed it more than the downhills. After running alongside some old fortresses in the mountains we reached Col Gallina. Here I sat on the floor for 2 minutes to recover. I still struggled a bit but knew that suffering is often only temporary during ultras.
Col Gallina – Rifugio Averau
Stats: 4.1 km, 480 m+, 121 m- (total 101.9 km, rank -19)
(7.5 miles, 649 ft+, 3,608 ft-, total 81.2 miles)
After being rather slow on the previous downhills, I knew that my A goal of 16 hours is completely unrealistic. It would rather be something around 19 hours in the end. While I was a bit disappointed by the time, the rank at this point was still 262. I was never ranked that well in other ultras and was therefore quite happy.
The 480 meter uphill to Rifugio Averau treated us with more incredible views. I saw rock formations looking like towers that I’ve never seen before. I’ve visited different mountain regions all across Switzerland, but this here was a different region. I later found out about the Cinque Torri.

Uphill meant that I would be stronger again and I gained 19 ranks on those 4.1km. With that I had also reached the 100km mark and only 20 would be left.
Rifugio Averau – Passo Giau
Stats: 3.4 km, 108 m+, 282 m- (total 105.3 km, rank +13)
(4.3 miles, 587 ft+, 1,610 ft-, total 85.6 miles)
Annoying rocky downhills with a little bit of elevation gain in between and I’ve reached Passo Giau. Lots of people were on that mountain pass. And they were not only there because of us runners. Sport cars, motor bikes and bicycles all over the places. Apparently this was causing conflicts sometimes between those groups. The dolomites are very touristic and a bit overrun at times. Regarding running it was made sure by volunteers that we could safely cross the mountain pass road. After a coke and a flask refill I was on my way.
Passo Giau – Rifugio Croda da Lago
Stats: 7.6 km, 317 m+, 510 m- (total 112.9 km, rank -10)
(5.6 miles, 1,601 ft+, 616 ft-, total 91.2 miles)
Here it was a fight. This section was down, up, down, up and down again. On the downhills I was often power hiking. It was a constant struggle. Should I run? Should I power hike? When I tried running I felt okay, but eventually my mind opted again for power hiking. I think in those periods I need to be stronger mentally. It’s surprising sometimes how much running is still possible so late in the race. It was also no easy terrain and I didn’t want to fall again. So, here I was rather cautious. Nevertheless my power hiking often wasn’t much slower than the running of others. Some uphills here were really steep. This wasn’t so visible. When analysing the course profile from a high level view it looks doable. But I was surprised about the difficulty on this section and the legs started to burn a bit on the uphills too.
What was motivating again was this view here:

Cortina was visible. Still far, but in sight. Around 15 km left and I would be done. This lifted my mood again. I’ve fastened my poles underneath my running vest and run downhill towards the next aid station. It looked like I had still enough energy to run the remainder of the race without the need to power hike.
Rifugio Croda da Lago – Cortina d’Ampezzo
Stats: 11.2 km, 144 m+, 973 m- (total 122.4 km, rank -18)
(6.6 miles, 393 ft+, 1,620 ft-, total 97.9 miles)
Rifugio Croda da Lago was beautiful. A mountain hut with a small lake. But I didn’t want to loose to much time and went onto the last section towards Cortina. The downhill wasn’t always easy in the forest, but I didn’t care too much. I concentrated and was running whenever possible because I just wanted to finish it. Eventually I’ve reach Cortina. A little uphill again and I was on the Corso d’Italia where the race started 19 hours before. The people in the restaurants and on the streets of Cortina were clapping and cheering. I was running again, notably a 5:44 pace, and reached the finish line with a time of 19:18:07!

I ranked 228 in the end. Out of 1632 starters, 1188 reached the finish line while 445 runners had a DNF. After Ospitale where I was ranked 316 I improved by 88 places.

After the race
I’ve got my medal and needed to sit down. My girlfriend found me and we went for a small beer a bit later. I was super happy about the result but also felt the effects of the effort. Back in the hotel I was glad I could take a shower. I tried to eat a bit but wasn’t hungry at all. In previous races where my goal was just to finish, I always felt good after the race. This was a bit different this time and I went to bed early that night.
The next day we went up to Cima Tofana (3,244 meters) after the breakfast. Luckily there was a cable car. The view up there was amazing and I could once again see the many beautiful peaks around Cortina.
After a recovery week, training started again slowly. I was feeling a bit low in energy the first week I was running again. The week after was fine though. Recovery was important but the training for the main race of the year had to start. In early September I planned to run the Swiss Peaks 170. A different beast with 11’000m+ and 13’000m- on 170km (36’000ft+ and 42000ft- on 105 miles).
Conclusion
Despite some early race struggles with several small falls, it turned out to be a great race for me. I was within my time goals (between Plan B and Plan C). And I am happy about the ranking. I was never ranked this well (top 14%). As always, the downhills were my weakness while nutrition went very well this time and I could it gels until the end.
The dolomites are beautiful, but the race was a bit overcrowded in the beginning. I prefer smaller races with a different atmosphere. Here I didn’t talk to lots of other runners. All seemed to just be focused on the race itself.
Race reports always help me for the preparation. And I hope this one will help a fellow runner. If you have questions, do not hesitate to contact me on Strava or X.