Train from Milan to Altdorf

🇮🇹 Milan → 🇨🇭 Altdorf

Straight-line Distance

161 km

NNW (344.3°)

Rail Distance

~209 km

Estimated by rail

Travel Time

~55m

High_Speed

CO2 Saved vs Flight

91.3%

37.3 kg less CO2

Environmental Comparison

Train

High_Speed

CO2 Emissions 3.6 kg

Flight

Economy class

CO2 Emissions 40.8 kg

Taking the train saves 37.3 kg CO2 (91.3% less emissions)

Route Information

Requires Transfer

Stations on This Route

Journey Tips

Altdorf, the capital of Uri canton and home of the William Tell legend, is reached from Milan via Arth-Goldau or Flüelen on Lake Uri. SBB trains cover the journey with a change typically at Lugano or Bellinzona. The small town is an underrated stop on the Gotthard axis.

Scenic Highlight

The approach to Altdorf through the Uri valley reveals the iconic silhouette of the Uri Alps, with the Bristenstock and Grosse Scheidegg visible against the skyline above the valley floor.

Booking Tip

Use the SBB app for seamless booking; the Swiss Travel Pass is valid on all connecting services and removes the need to purchase regional tickets separately for the Uri valley section.

Related Guides

Continue Your Journey

Frequently Asked Questions

The estimated train journey from Milan to Altdorf takes approximately 55m. This estimate is based on a rail distance of ~209 km using a high_speed service.
The estimated rail distance from Milan to Altdorf is approximately 209 km (161 km straight-line). Rail routes are longer than straight-line distances because tracks follow terrain and connect intermediate cities.
Travelling by train from Milan to Altdorf emits approximately 3.6 kg of CO2, compared to 40.8 kg by flight. Taking the train saves 37.3 kg of CO2 — a 91.3% reduction in emissions.
The route from Milan to Altdorf typically requires at least one transfer. Check operator timetables for the most direct connection available.
Check regional and national rail operator websites for services between Milan and Altdorf.

Train vs Flight comparison

Compare door-to-door time, CO2 and cost for Milan to Altdorf

Compare now →

Data last updated: 2026-02-27