The average train between Spain and St. Moritz takes 24h 42m and the fastest train takes 21h 55m. The train service runs several times per day from Spain 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 twice daily between Spain and St. Moritz. The earliest departure is at 9:17 AM in the morning, and the last departure from Spain is at 4:14 PM which arrives into St. Moritz at 5:37 PM. All services require a transfer at Barcelona-Sants and take an average of 24h 42m. The schedules shown below are for the next available departures.
Arrives next day





21h 55m • 5 changes
Arrives next day





26h 41m • 5 changes
Arrives next day





21h 55m • 5 changes
Arrives next day





26h 41m • 5 changes
Arrives next day





21h 55m • 5 changes
Arrives next day





26h 41m • 5 changes
Arrives next day





21h 55m • 5 changes
Arrives next day





26h 41m • 5 changes
Want to know about travelling from Spain 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 Spain to St. Moritz. However, there are services departing from Spain station and arriving at St. Moritz station via Valence Tgv Rhone-Alpes Sud. The journey, including transfers, takes approximately 24h 42m.
Spain to St. Moritz train services, operated by Rodalies de Catalunya, depart from Barcelona-Sants station.
Spain to St. Moritz train services, operated by Rodalies de Catalunya, arrive at St. Moritz station.
Book your Spain to St. Moritz train tickets online with Rodalies de Catalunya, TGV inOui and 3 other operators.
The distance between Spain and St. Moritz is 1,433.3 km. The road distance is 1,369 km.
You can take a train from Barcelona Plaça de Catalunya to St. Moritz via Barcelona-Sants, Valence Tgv Rhone-Alpes Sud, Mulhouse Ville, Basel Sbb, Basel SBB, and Chur in around 16h 42m.