There are 7 ways to get from Heidelberg to St. Moritz by train, bus, night train, car, or plane
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train via Basel
best- Take the train from Mannheim, Hauptbahnhof to Basel SBBtrain 12 / ...
- Take the train from Basel SBB to Churtrain Ic3 / ...
- Take the train from Chur to St. Moritztrain Gex / ...
8h 38mCHF 67–225Bus
cheapest- Take the bus from Heidelberg Post Waypoint to Karlsruhe central train stationbus 198 / ...
- Take the bus from Karlsruhe central train station to Bregenz bus stationbus N77
- Take the bus from Bregenz bus station to Chur train stationbus
- Take the bus from Chur, Postautostation to St. Moritz, Bahnhofbus 182
12h 34mCHF 38–62Night train, train
- Take the nighttrain from Heidelberg Hbf to Zuerich Hbnighttrain Nj
- Take the train from Zürich HB to Churtrain Ice / ...
- Take the train from Chur to St. Moritztrain Gex / ...
8h 36mCHF 86–183Drive 466.3 km
- Drive from Heidelberg to St. Moritzcar 466.3 km
5h 22mCHF 79–113Train
- Take the train from Heidelberg, Hauptbahnhof to Karlsruhe Hauptbahnhoftrain S3 / ...
- Take the train from Karlsruhe Hauptbahnhof to Konstanz Bahnhoftrain Re2
- Take the train from Konstanz to St. Gallen(Ch)train Re / ...
- Take the train from St. Gallen to Churtrain
- Take the train from Chur to St. Moritztrain Gex / ...
10h 6mCHF 83–212Train to Frankfurt, fly, train
- Take the train from Mannheim, Hauptbahnhof to Frankfurttrain
- Fly from Frankfurt (FRA) to Zurich Airport (ZRH)plane FRA - ZRH
- Take the train from Zürich HB to Churtrain
- Take the train from Chur to St. Moritztrain
7h 18mCHF 157–328Train to Stuttgart Airport, fly, train
- Take the train from Heidelberg, Hauptbahnhof to Hauptbahnhoftrain
- Fly from Stuttgart Airport (STR) to Zurich Airport (ZRH)plane STR - ZRH
- Take the train from Zürich HB to Churtrain
- Take the train from Chur to St. Moritztrain
7h 27mCHF 172–396
Heidelberg to St. Moritz by train
Comparing Your Travel Options
The cheapest way to get from Heidelberg to St. Moritz is to bus which costs SFr 35 - SFr 65 and takes 12h 34m.
The fastest way to get from Heidelberg to St. Moritz is to drive which takes 5h 22m and costs SFr 75 - SFr 120.
No, there is no direct bus from Heidelberg to St. Moritz. However, there are services departing from Heidelberg Post Waypoint and arriving at St. Moritz, Bahnhof via Karlsruhe central train station, Bregenz bus station and Chur, Postautostation. The journey, including transfers, takes approximately 12h 34m.
No, there is no direct train from Heidelberg to St. Moritz. However, there are services departing from Heidelberg, Hauptbahnhof and arriving at St. Moritz via Mannheim, Hauptbahnhof, Basel SBB and Chur. The journey, including transfers, takes approximately 8h 38m.
The distance between Heidelberg and St. Moritz is 556 km. The road distance is 466.3 km.
The best way to get from Heidelberg to St. Moritz without a car is to train via Basel which takes 8h 38m and costs SFr 65 - SFr 230.
It takes approximately 8h 38m to get from Heidelberg to St. Moritz, including transfers.
Heidelberg to St. Moritz bus services, operated by FlixBus, depart from Heidelberg Post Waypoint station.
Heidelberg to St. Moritz train services, operated by Deutsche Bahn Intercity (DB IC), depart from Mannheim, Hauptbahnhof station.
The best way to get from Heidelberg to St. Moritz is to train via Basel which takes 8h 38m and costs SFr 65 - SFr 230. Alternatively, you can bus, which costs SFr 35 - SFr 65 and takes 12h 34m.
What companies run services between Heidelberg, Germany and St. Moritz, Switzerland?
You can take a train from Heidelberg, Hauptbahnhof to St. Moritz via Mannheim, Hauptbahnhof, Basel SBB, and Chur in around 8h 38m. Alternatively, you can take a bus from Heidelberg Post Waypoint to St. Moritz, Bahnhof via Karlsruhe central train station, Bregenz bus station, Chur train station, and Chur, Postautostation in around 12h 34m.
- Website
- lufthansa.com
Flights from Frankfurt to Zurich Airport
- Ave. Duration
- 57 min
- When
- Every day
- Estimated price
- CHF 80–430
Flights from Stuttgart Airport to Zurich Airport
- Ave. Duration
- 45 min
- When
- Every day
- Estimated price
- CHF 60–410
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Mannheim, Hauptbahnhof to Basel SBB
- Ave. Duration
- 2h 12m
- Frequency
- Hourly
- Estimated price
- CHF 40–85
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Heidelberg, Hauptbahnhof to Karlsruhe Hauptbahnhof
- Ave. Duration
- 40 min
- Frequency
- 5 times a day
- Estimated price
- CHF 9–18
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Karlsruhe Hauptbahnhof to Konstanz Bahnhof
- Ave. Duration
- 3h 18m
- Frequency
- Once a week
- Estimated price
- CHF 40–85
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Mannheim, Hauptbahnhof to Frankfurt
- Ave. Duration
- 31 min
- Frequency
- Hourly
- Estimated price
- CHF 12–25
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Heidelberg, Hauptbahnhof to Hauptbahnhof
- Ave. Duration
- 47 min
- Frequency
- Hourly
- Estimated price
- CHF 15–35
- Website
- Deutsche Bahn Intercity (DB IC)
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- Flixbus
Bus from Heidelberg Post Waypoint to Karlsruhe central train station
- Ave. Duration
- 44 min
- Frequency
- Hourly
- Estimated price
- CHF 4–7
- Website
- Flixbus
Bus from Karlsruhe central train station to Bregenz bus station
- Ave. Duration
- 4h 25m
- Frequency
- Once daily
- Estimated price
- CHF 21–35
- Website
- Flixbus
Bus from Bregenz bus station to Chur train station
- Ave. Duration
- 1h 50m
- Frequency
- Twice daily
- Estimated price
- CHF 6–11
- Website
- Flixbus
Want to know more about travelling around Switzerland
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
Booking & Getting There
Heidelberg to St. Moritz bus services, operated by FlixBus, arrive at Karlsruhe central train station.
Heidelberg to St. Moritz train services, operated by Deutsche Bahn Intercity (DB IC), arrive at Basel SBB station.
Yes, the driving distance between Heidelberg to St. Moritz is 466 km. It takes approximately 5h 22m to drive from Heidelberg to St. Moritz.
Book your Heidelberg to St. Moritz train tickets online with Omio.
There are 2281+ hotels available in St. Moritz.









