Monday, May 18, 2026

Race Report: Night Marathon

On May 16, I ran the Night Marathon in Luxembourg City.  Most of the races I’ve done in Europe have been held on Sunday mornings.  This race is held on a Saturday evening.

Luxembourg is a small landlocked country, bordering Belgium, Germany, and France.  The official language is Luxembourgish, but French and German are commonly spoken.  Road signs are mostly in French, and I noticed that most of the restaurants have menus in French.

Thursday, May 14

I arrived in Amsterdam on an overnight flight from Minneapolis.  This was my first arrival in Europe since they began implementing the new Entry/Exit System, which uses biometric data instead of passport stamps.  I was worried about long lines, but I was lucky to get to the arrival hall when there wasn’t any line at all.  I needed to use a kiosk to scan my passport, face, and fingerprints, but that only took a few minutes.

I got to Luxembourg City around 10:00.  Public transportation in Luxembourg is free.  I caught a bus right outside the airport terminal and took it to the stop that was closest to my hotel.

I quickly learned that passing showers can come at any time.  It was sunny when I left the airport, but it started raining hard just before I got off the bus.  I had an umbrella in my suitcase, but I didn’t want to hunt for it in the rain.  I walked to the hotel as quickly as I could with luggage, but I was soaked by the time I got there.  After that, I never went anywhere without having an umbrella handy.

I stayed at the Best Western Plus.  I chose this hotel because it’s close to a tram stop, making it easy to get to and from the race venue.  I was within a mile of the old town.

It was much too early to check in, but the rain had already stopped, so I left my bags at the hotel and went into town to do some sightseeing.

I booked a walking tour for Friday, but I was on my own for sightseeing on Thursday.  I avoided visiting sites that I knew I would see on my walking tour.  Instead, I walked to some of the old fortifications in the Alzette river valley.

Luxembourg City is located at the confluence of the Alzette and Pétrusse rivers.  Overlooking the Alzette valley, you can see the remnants of a series of fortifications that were built centuries ago.  At one time, Luxembourg City was one of the most heavily fortified cities in Europe, but many of the fortifications have been destroyed or removed since the late 1800s.

After walking to the old town, I went out to a viewpoint that was high above the Alzette River.  Looking across the valley, you can see the remnants of Fort Niedergrünewald on the hillside.

From the viewing platform, I was able to take an elevator down to the bottom of the valley.  My next stop was this gate, which used to be part of the city wall.

I crossed the river on this stone arch bridge.

From the bridge, I had this view of the river.

I saw a similar gate on the other side.

As I worked my way along the east bank, I came to this Romanian Orthodox church.

There were two forts I wanted to see on the east bank of the river.  The first one was Fort Obergrünewald.  To get there, I had to hike up a steep trail.

I continued past Fort Obergrünewald to reach Fort Thüngen.  This fort has been restored, and it’s now a museum which describes the history of the various fortifications in the city.

On my way back down into the valley, I stopped at this viewpoint, to look back across the river.

When I got back to the old town, I was overdue for lunch.  Thursday was Ascension Day, which is a holiday in Luxembourg.  Most of the restaurants were closed, so I had to walk around a while before I found a restaurant that was open.

I had a filling lunch.  Then I walked back to the hotel, where I was able to check into my room.  Then I tried to take a nap.

On the first day of an overseas trip, I usually force myself to stay awake until nightfall, and then I crash.  I usually adopt an early-to-bed, early to rise schedule.  Because my race was an evening race, I wanted to sleep late and stay up late.  I didn’t think I could do a late night on that first day without a nap.  As it turns out, I wasn’t able to fall asleep while it was still light out.

After resting in bed for a couple hours, I got up and took a shower.  Then I was able to function again.

I went back into the old town and wandered around looking for a place to have dinner.  It wasn’t easy.  Most of the restaurants were closed.  The ones that were open were so busy that you needed a reservation to get a table.  A few had outdoor seating, but it was 50 degrees, and I wasn’t dressed warm enough for that.  I eventually found a nice Italian restaurant that was open, but surprisingly wasn’t busy.

When it got dark, I was finally able to get some sleep.

Friday, May 15

After breakfast, I did a workout at the hotel.  Then I took a tram to the expo.  The expo was held at an exposition center called Luxexpo – The Box.  It was located in Kirchberg, which is the modern business district.

I arrived just as the expo was starting, so it was crowded.  Packet pickup was in one part of the building.  A different part of the building had exhibitors.

In the afternoon, I took a free walking tour, where the tour guides work for tips.  The meeting point was next to a tram stop, making it easy to get there.

We started at Place de Metz, which is home to Luxembourg’s first bank.

Next, we crossed the Adolphe Bridge, which is a stone arch bridge dating to the 1900s.  From the bridge, we had views of the Pétrusse valley.


After crossing the bridge, we followed the northern edge of the river valley, which is also the southern edge of the old town.  Our next stop was a plaza with a war memorial honoring the fallen heroes of the two world wars.


We continued to the Cathedral Notre-Dame of Luxembourg.

Our next stop was another war memorial, but this one was dedicated to victims of the holocaust.

We entered the old town, where our next stop was a statue dedicated to the Grand Duchess Charlotte.

As we continued into the old town, we saw the Grand Ducal Palace.

Our guide pointed out places we might want to visit later on our own.  One was Place Guillaume II, which is the largest public square in the old town.

Our guide also pointed out restaurants where we could try local food and beverages, as wells as restaurants of historic importance, such as the old fish market.  Our last stop before leaving the old town was Luxembourg’s oldest church.

Our last two stops were scenic overlooks.  From one, we had a view of the Alzette valley.

From the other, we had a view of the Grund neighborhood in the Pétrusse valley.


I had skipped lunch, so after the tour I was hungry for an early dinner.  I walked back into the old town to look for a place to eat dinner.  It wasn’t a holiday, so all the restaurants were open, but the first few I tried didn’t open until 6:30 or 7:00.  I eventually settled on another Italian restaurant.

Because I had an early dinner, I went out later for dessert, at a restaurant near my hotel.

Saturday, May 16

Saturday was race day, but the race wasn’t until 7:00 PM, so I had an unusual race day schedule.  I slept later than usual, getting up at 8:00 only so I wouldn’t miss the hotel’s breakfast hours.  I ate a larger than usual breakfast.

After breakfast, I climbed back into bed.  I didn’t get back to sleep, but I rested all morning, while digesting my big breakfast.

It was almost lunch time when I finally showered and got dressed.  Lunch was an important meal.  It was my last meal of the day, so I needed to eat enough to sustain myself for the rest of the day.  At the same time, I didn’t want to eat anything too heavy.

There was a breakfast spot around the block from my hotel that served waffles.  That sounded perfect, but when I got there, I saw that all the indoor seating was taken.  I didn’t want to spend too much time on my feet before the race, but I reluctantly walked into the old town.  I had the same experience there.  There were numerous cafes, but indoor seating was limited, and all the tables were taken.

I eventually gave up on finding a breakfast spot.  After doing way too much walking, I went to an Italian restaurant and had pasta instead.  That meal was more filling than I would have preferred, but I had more than five hours to digest before the race.

After lunch, I checked the forecast, picked out my clothes for the race, and reviewed the runner’s guide, so I would know the layout of the start area.

The race started at Luxexpo – The Box.  We were advised to get there by 4:30 PM.  That seemed awfully early, but I needed to take the tram, and I didn’t know how crowded they would be if I waited until later.  It’s a large race, and most people were getting there by tram or bus.  I left the hotel at 4:00, and arrived at the start area about 20 minutes later.

The starting line was outside, but we could wait inside the building, where there was a gear check and real bathrooms.  They had an area inside the building called the Runners’ Lounge.  There were dozens of tables with benches, so I was able to sit down while I waited.

When I needed to get up to use the bathroom, I decided I might as well check my gear bag.  I had a pair of wind pants that I might need after the race if I was cold.  I also had a warm hat and a plastic rain poncho.  I wasn’t seeing any rain in the forecast, so I put those things in the gear bag as well.

The gear check was in the next room.  Once I went into that room, the volunteers wouldn’t let me go back to the lounge area.  It was one-way traffic.  I went outside, walked around to the main entrance, and walked through some long hallways to get back to the lounge.  Then I continued waiting.

The next time I checked my weather app, the forecast had changed.  Now it looked like it would start raining 10 or 15 minutes before the race started.  I regretted putting my rain poncho in the gear bag that I already checked.

I’m using to morning races, where it’s coldest at the start and gradually warms up.  In an evening race, the temperature is gradually dropping.  It was 51 degrees when we started, but the temperature would drop several degrees by the time I finished.  I wore tights to keep my legs warm.  On top, I was wearing a long sleeve polypro shirt with a T-shirt over it.  I expected to be overdressed in the first half of the race, but I wanted to make sure I was warm enough in the late miles, when it was colder.

We had to be in the start corrals by 6:50.  The runners’ guide they gave us had a good map of the start corrals and how to reach the entrance to each corral.  I left the building at 6:30 and worked my way into the corral.

I didn’t have a time goal for this race.  I knew from my recent race experiences that 4:00 or 4:05 was unrealistic.  I wanted to go at a pace where I could enjoy the experience and not blow up.  The time limit was six hours.  I wanted to finish before midnight, which gave me five hours.

They had pace groups in 15-minute increments.  I was planning to start with the 4:29 group.  I knew they were starting in the same corral, but I couldn’t find them.  Between the marathon, the half marathon, and the relay, there were 18,000 runners.  There were thousands of runners just in my corral.

Ten minutes before the start, the wind picked up, and it started raining.  In addition to my other layers, I was wearing a Tyvek jacket.  I was planning to take it off and tie it around my waist before we started.  Instead, I decided to keep it on as long as it was raining.  I unzipped it in front, so it wouldn’t cover up my race bib.

In the start corrals, we were packed in like sardines.  The bodies around me sheltered me from the cold wind.  After crossing the starting line, there was enough room between runners that I could feel the wind.  Even with all my layers, I was cold.

The first five kilometers were through the Kirchberg district.  In the first kilometer, we snaked back and forth.  Then we finally turned onto a street that took us toward the city center.  There was enough water on the street, that I could feel cold water soaking through my shoes.

Looking ahead to the west, I could see a break in the clouds.  I was cautiously optimistic that the rain wouldn’t last for too much longer.

When I’m cold, I have a subconscious tendency to run faster.  Ideally, I would’ve started at a pace in the 10:20s.  Instead, I ran the first mile in 9:20.  That wasn’t a sustainable pace, so I tried to tell myself to relax.

The next mile was even faster.  I had to make a conscious effort to slow down.  The third mile was 9:38.  That was better, but it was still too fast.

After about five kilometers, we reached a section with a few turns.  Instead of running on pavement, there were places where we were running across plazas paved with tiles.  The tiles were wet, so I had to be careful.

Crossing diagonally through one plaza, we had to run between some metal posts.  The runners around me were weaving around them haphazardly.  Everyone was taking a different line.  Another runner bumped into me and almost knocked me down.

In the fourth mile, we crossed the “red bridge” over the Alzette valley.  I couldn’t tell if it was still raining.  I didn’t feel any drops, but the streets were wet and my clothes were wet, so it was hard to tell.

As we came off the bridge, there were huge crowds on both sides.  Some of the spectators were holding signs made from cardboard.  The cardboard signs didn’t appear to be wet, so I concluded the rain had stopped.

I took off my jacket and tied it around my waist.  It’s tough to do that while running.  It’s even tougher when the sleeves are wet.  I was forced to slow down.

At this point, we were making a loop though a small city park.  We were on a narrow path.  I slowed down as I was trying to tie my jacket.  Faster runners were bumping into me as they tried to get by.

At about 7K, we ran through a large plaza and then crossed over the tram tracks near my hotel.  The next several kilometers were through a neighborhood just north of my hotel.  I had not previously explored this neighborhood.

I didn’t like this part of the course.  We had good crowd support, but the streets were too narrow for so many runners.  Also, there was an insane number of turns.

This part of the course was also slightly hilly.  There were no steep hills, but some streets were slightly uphill and others were slightly downhill.  Whenever I was running uphill, I started to get hot, even without my jacket.  I was forced to slow down to keep from overheating.  After averaging about 9:30 per mile in the first four miles, I slowed to about 11 minutes from mile five on.

Runners doing the half marathon had signs on their backs saying, “21K.”  Runners in the marathon relay had signs saying, “Team Run.”  The runners doing the full marathon were the only ones with no signs on their backs.  At least 90 percent of the runners around me had signs.

Between 13 and 14K, we ran near my hotel and crossed the tram tracks again.  Then we ran through a different section of the same city park we had run through earlier.  After leaving the park, we ran through the old town.  There were huge crowds of spectators in the old town, and they made lots of noise for us.

As we ran through one of the large squares, I saw too large inflatable arches.  One said, “21.”  The other said, “42.”  This is where the races diverged.  After the split, it was far less crowded, but faster runners were still bumping into me as they went by.  That got really annoying.

It was in the old town that I first noticed a change in the lighting.  There wasn’t as much natural light.  It wasn’t dark yet, but the street lamps started to turn on.

At 16K, we left the old town.  I started to feel a cold breeze.  I no longer had to worry about overheating.  Soon, I would have to worry about getting cold, even with all the layers I was wearing.

The next 12 kilometers took us on a circuitous route through neighborhoods to the west of the city center.  It was the first time I saw these neighborhoods.  I found them to be disappointing.  The crowds were thin here.

In the next mile, I sped up by about 30 seconds.  I didn’t make a conscious effort to speed up, but I was no longer making a conscious effort to go slow.  As it turns out, that mile was a fluke.  In the next mile, I slowed down to 11 minutes again.

At the halfway point, I was on pace for a time in the low 4:40s, but I knew I’d actually be slower than that.  The first half included four fast miles at the beginning when I was running faster to try to keep warm in the cold rain and wind.  There wouldn’t be any miles like that in the second half.

The sky above us wasn’t dark yet, and it was dark enough at street level that we were dependent on the street lamps.  Now, it really felt like a night race.  Sometimes we would run through a small park, and there would be shadows.  I had to pay closer attention to my footing.

By 25K, I had noticed that my watch was way off.  I was getting splits from my watch almost half a mile early.  There were numerous turns, and we were sometimes running through parks with heavy tree cover.  I’m sure those two things played a role.

I was getting weary now.  My pace got slower.  Now it was almost 12 minutes per mile.  At 27K, I told myself I only had 15K to go.  At 28K, I told myself I was two thirds done.  The remaining distance seemed manageable, but I was worried about what was coming.

Up until now, there were uphill streets and downhill streets, but the grade was always gentle.  There was nothing that actually looking like a hill.  I knew there would be real hills later, and I didn’t know how I would handle that.

Just past 28K, we crossed the Adolphe Bridge over the Pétrusse valley.  Under the roadway, there’s a lower level for cyclists and pedestrians.  I had walked across this level earlier, but it was different running through here at night.  It was brightly lit.

As we came off the bridge, we went down a ramp that took us down into the Pétrusse river valley.  As we ran under the Adolphe Bridge, I knew we would eventually have to climb back up to that level.  That was one of the hills that I knew was coming.

There wasn’t as much light down in the river valley.  There were shadows, so I couldn’t always see my footing.  Sometimes, I could feel a rough patch of pavement that I never saw.  That made me nervous.

For a while, the path we were on leveled off.  Then we started descending again.  It was scary how low we were going.  All I could think of was how much we would need to climb later to get back out of the valley.

Despite those concerns, this was actually my favorite part of the race.  It was the most scenic part of the course, and running it at night was eerie.

You could never run through here at night on your own.  There were places where the only light was from portable lights set up by the race organizers.  Without those, some sections would be completely dark.

We ran under another bridge, and it towered way above us.  I had trouble imagining climbing up to the level of that bridge.  Then we went under the next bridge, and I could see runners crossing the bridge.  We eventually needed to get way up there.

At 30K, we were as low as we would go.  We were right next to the river, and I could see the water.  We were only about five feet about the river.

The next kilometer was level.  Then, as I reached the 31K sign, I could see the start of the climb.  The first part was steep enough that the runners ahead of me were walking it.  I kept running, but at one point it didn’t seem like my running was any faster than walking.

The path we were on briefly leveled off.  Then we turned onto a road and starting climbing again.  This part wasn’t as steep.

We left the road and turned onto a brick rampway with switchbacks.  Then we got back onto city streets.

I knew we weren’t done climbing yet, but it was easier from here.  For the next two kilometers, we were going uphill, but only slightly.  The rest of the climb was really spread out.

We came around a turn, and I suddenly recognized where I was.  We were running through Place de Metz.  That’s right next to the Adolphe Bridge.  I was both amazed and relieved when I realized that we were done climbing.

We were on the south side of the river for another kilometer.  Then, at 35K, we began crossing the bridge that would take us back across the Pétrusse valley.  At 36K, we entered the old town again.  Now everything was lit up and colorful.  The crowds here were fantastic.  They were making all kinds of noise.  It was after 11 PM.  This was the Saturday night party crowd.  If the Pétrusse valley was my favorite part of the race, this was my second favorite part.

On most streets we had good footing.  In a few spots, there were cobblestones, but they were well-lit, so I could see my footing.

Between 37 and 38K, we crossed the “red bridge” again.  Coming back through Kirchberg, we took a different route than before.  I knew there was one more tough climb ahead.  Before the race, I was talking to a runner from Germany who did this race last year.  He said this climb wiped him out.

As soon as we were off the bridge, we turned and left the roadway.  We were climbing up to higher ground.  This climb was steeper than the previous one, but there was less total elevation change.

There were lamps on the side of the trail, but there were still shadows.  At one point, I accidentally went off the trail and into the grass.

Suddenly, the lights around me went dark.  I could see lights ahead of me that were still on.  I couldn’t see the trail, but I followed the runners ahead of me until I reached the lights.

Next, we ran through a tunnel.  I wasn’t sure what was above us.  Maybe it was a building, or maybe we were running under a hill.  After the tunnel, we came back onto the same street we had left earlier.

I was puzzled.  We had climbed and climbed, but we never came back down again.  How could this be the same street?  The only explanation is that this street was noticeably uphill.  When we ran it in the other direction, it seemed flat.  The early miles must have actually been downhill.  That explains why I was going fast in the early miles, even as I told myself to slow down.

With about 3K to go, I reached a beer stop that I think was an official aid station.  The beer they had was Diekirch, which was one of the race sponsors.  On one side of the road, there was a guy holding up a sign that said, “4.8 %”.  On the other side, there was a large sign, saying “Diekirch.”  As I took a cup, the guy handing it to me pointed to the sign.  He wanted to make sure I knew what I was drinking.

We were running right next to the tram line now.  As we passed a tram stop, I looked to see which one it was.  It was the stop for the European Parliament building.  I knew there were at least a few more stops before Luxexpo.  Looking for tram stops gave me a better sense of how much farther it was.

When my watch read 25 miles, I had to remind myself that the distance was misleading.  What I really wanted to see what the 40K sign.  It wasn’t even in sight yet.

At 40K, we left the road we were on.  We were right at a tram stop, but I couldn’t see which one.  I was hoping it was the last stop before Luxexpo.  It soon became obvious that it wasn’t.  We were on side streets for a while.  Then we turned onto a narrow path through the woods.

I was cold enough now that my hands were getting numb.  When my watch read 26 miles, I guessed that I actually had more than a kilometer to go.  Then I saw the “41” sign.  I looked at my watch.  It seemed like I would break five hours, but not by much.  As I continued, I realized my math was off.  I was thinking I had one kilometer to go, but it was actually 1200 meters.  I wasn’t going to finish by midnight.

With about 500 meters to go, we were running through a parking lot with metal barriers on each side.  I got too close to the barriers and tripped on one of the supports.  In daylight I would’ve seen it, but at night it was easy to miss.

I tumbled onto the pavement.  Another runner stopped to help me up.  I resumed running, but with far less enthusiasm.

Both hands hurt now.  I was wearing gloves, so I didn’t scrape them as badly as I would have otherwise.

The finish line was inside Luxexpo – The Box.  As I entered the building, I was immediately enveloped by warmer air.  That felt really good.  I just had to make a few turns withing the building before crossing the finish line.

I crossed the finish line in 5:00:56.  I was disappointed to be slower than five hours, but mostly I was happy to be done.

A volunteer handed me my finisher medal.  Then I went around a corner and into a different part of the building.

This room was the one where I checked my gear bag.  I retrieved my bag, but I didn’t even try to open it.  My hands were too cold to untie it.  I stopped long enough to put my jacket on.  Then I went to the next room, which had post-race food.

There were bananas and various protein bars, cut into small slices.  This was the only food I would eat before going to bed, so I made a point of eating enough to tide me over.

From that room, I could only go outside, but after leaving the “runners only” area, I re-entered the building.  I recognized the hallway I was in, so I knew I how to get back out to the main entrance.  Along the way, I stopped at a bathroom, so I wouldn’t need to stop at the port-o-potties outside.

Sunday, May 17

After the race, I needed to take a tram back to my hotel.  Ordinarily, the trams run from 4 AM to midnight, so leaving after midnight would be a problem.  On the night of the race, they had extended hours.  There were trams every seven minutes until 2:30 AM.

I boarded at the beginning of the line.  I was able to get on the next tram.  I was even able to get a seat.  Then more people kept piling in, until there wasn’t even room to stand.  As we reached other stops, there were people who wanted to board, but there was no room for them.

They have monitors that show which stop we’re at and the next few stops.  With all the people in the way, I couldn’t see the monitors.  At one point I asked the person standing next to me which stop we were at.  She struggled to remember the full name of the stop.  Then she said, “before the red bridge.”  A minute later, I could see that we were on the bridge.  Mine was the next stop.

Getting from my seat to the door wasn’t easy.  It helped that several other people were getting off at the same stop.

I only had to walk about a block to get to my hotel, but I had to wait for the light to change before crossing a street.  As I waited, I started to shiver.

Inside the hotel, I continued to shiver as I was waiting for the elevator.  I wonder what the other guy waiting for the elevator thought of me.  He didn’t appear to be a runner, and I’m sure I was a mess.

When I took off my gloves, I was relieved to see that I didn’t have any scrapes on my hands.  My gloves protected them.  When I took off my tights, I could see an abrasion on the outside of my right knee.  If I wasn’t wearing tights, it would’ve been much worse.

I took a hot shower.  I needed that to warm up more than I needed it to rinse off the sweat.

I needed to cool the room down before I could get to sleep.  As soon as my hair was dry, I opened a window.  Within 10 minutes, the room was five degrees cooler.  I closed the window and tried to get to sleep.

It was 2 AM when I went to bed.  It was probably 3 AM by the time I relaxed enough to fall asleep.

I woke up a few times.  The first two times, I got right back to sleep.  The third time, I noticed it was light outside.  It was almost 8:00, so I got up.  I wanted to get down to breakfast before it got too crowded.

Surprisingly, there were only a few other people in the breakfast area.  The previous two mornings, it was packed, and there was always a line for the coffee machine.  I got the impression most of the other guests at this hotel were business travelers, rather than runners.  I’m guessing very few of the business travelers stayed over the weekend.

I waited until after breakfast to take a shower.  Then I did my best to stretch my tight Achilles tendons.

After doing all my stretches, I did some strength training.  Those exercises helped to loosen me up, but my Achilles tendons were so tight I could barely walk.

I spent the first half of the afternoon at the hotel.  Then I walked into the old town for an early dinner.  I went to a restaurant recommended by the guide of my walking tour.  It’s across the street from the Grand Ducal Palace, and they serve traditional Luxembourgish food.

As luck would have it, I left the restaurant just in time to see the changing of the guard ceremony at the palace.  It’s a brief ceremony, so I easily could have missed it.

I turned in earlier than night, so I could catch up on sleep before a long travel day.

Monday, May 18

I flew home on Monday.  My flight to Amsterdam wasn’t until 10:25, so I was able to eat breakfast at the hotel before walking to the bus stop.  This time, I had my umbrella handy.

Walking to the bus stop and through the airports, I found that walking was already much more comfortable.


Race statistics:
Distance:  42.2 kilometers
Time:  5:00:56
Average Pace:  7:08 per kilometer (11:29 per mile)
First Half:  2:20:47
Second Half:  2:40:09
Marathons/Ultras in 2026:  13
Lifetime Marathons/Ultras:  585
Countries:  59

No comments:

Post a Comment