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 39mCHF 71–475Bus
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 37–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 87–224Drive 466.3 km
- Drive from Heidelberg to St. Moritzcar 466.3 km
5h 22mCHF 77–112Train
- Take the train from Kirchheim/Rohrbach, Bf 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 24mCHF 124–246Train 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 16mCHF 155–390Train 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 180–474
Heidelberg to St. Moritz by train
Questions & Answers
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 39m.
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 39m and costs SFr 70 - SFr 480.
It takes approximately 8h 39m 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 39m and costs SFr 70 - SFr 480. 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 39m. 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–400
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 11m
- Frequency
- Hourly
- Estimated price
- CHF 40–180
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Mannheim, Hauptbahnhof to Frankfurt
- Ave. Duration
- 31 min
- Frequency
- Hourly
- Estimated price
- CHF 12–50
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Heidelberg, Hauptbahnhof to Hauptbahnhof
- Ave. Duration
- 47 min
- Frequency
- Hourly
- Estimated price
- CHF 15–65
- Website
- Deutsche Bahn Intercity (DB IC)
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Heidelberg Post Waypoint to Karlsruhe central train station
- Ave. Duration
- 44 min
- Frequency
- Hourly
- Estimated price
- CHF 3–7
- Website
- Flixbus
Bus from Karlsruhe central train station to Bregenz bus station
- Ave. Duration
- 4h 25m
- Frequency
- Once daily
- Estimated price
- CHF 20–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
More Questions & Answers
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 2311+ hotels available in St. Moritz.









