The average train between Bodensee (Lake) and St. Moritz takes 4h 27m and the fastest train takes 3h 36m. There is a train service every few hours from Bodensee (Lake) to St. Moritz. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run hourly between Bodensee (Lake) and St. Moritz. The earliest departure is at 5:33 AM in the morning, and the last departure from Bodensee (Lake) is at 8:33 PM which arrives into St. Moritz at 7:12 AM. All services require a transfer at Rorschach and take an average of 4h 27m. The schedules shown below are for the next available departures.


3h 54m • 2 changes


4h 25m • 2 changes
Arrives next day


10h 39m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes


4h 22m • 2 changes
Want to know about travelling from Bodensee (Lake) to St. Moritz? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from Bodensee (Lake) to St. Moritz. However, there are services departing from Bodensee (Lake) station and arriving at St. Moritz station via Chur. The journey, including transfers, takes approximately 4h 27m.
Bodensee (Lake) to St. Moritz train services, operated by Appenzeller Bahnen, depart from Rorschach station.
Bodensee (Lake) to St. Moritz train services, operated by Appenzeller Bahnen, arrive at St. Moritz station.
The distance between Bodensee (Lake) and St. Moritz is 124 km. The road distance is 175 km.
You can take a train from Rorschach Hafen to St. Moritz via Rorschach and Chur in around 4h 33m.