There are 10 ways to get from Perpignan to St. Moritz by train (TGV, Renfe), bus, car, train, 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
best- Take the train from Perpignan to Montpellier Saint-Rochtrain Ter
- Take the train from Montpellier Saint-Roch to Mulhouse Villetrain Tgv
- Take the train from Basel SBB to Churtrain Ic3 / ...
- Take the train from Chur to St. Moritztrain Gex / ...
14h 38mCHF 182–570Train to Barcelona–El Prat Airport, fly to Milano Malpensa Airport, train, bus
cheapest- Take the train from Perpignan to Barcelona-Santstrain
- Fly from Barcelona–El Prat Airport (BCN) to Milano Malpensa Airport (MXP)plane BCN - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Centraletrain
- Take the train from Milano Centrale to Colicotrain
- Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
12h 30mCHF 55–190Bus
- Take the bus from Perpignan to Milanbus
- Take the bus from Milano, Autostazione Lampugnano to Luganobus
- Take the bus from Lugano, Stazione Nord to St. Moritz, Bahnhofbus 631
18h 10mCHF 68–114Drive 886.1 km
- Drive from Perpignan to St. Moritzcar 886.1 km
10h 58mCHF 143–207Train to Barcelona–El Prat Airport, fly to Zurich Airport, train
- Take the train from Perpignan to Barcelona-Santstrain
- Fly from Barcelona–El Prat Airport (BCN) to Zurich Airport (ZRH)plane BCN - ZRH
- Take the train from Zürich HB to Churtrain
- Take the train from Chur to St. Moritztrain
10hCHF 119–362Train via Geneva
- Take the train from Perpignan to Valence Tgv Rhone-Alpes Sudtrain Tgv
- Take the train from Valence Tgv Rhone-Alpes Sud to Genevetrain Ter
- Take the train from Genève to Brigtrain Ec
- Take the train from Brig to St. Moritztrain 902 / ...
17h 2mBus, train
- Take the bus from Perpignan - Bus Station to Milano, Autostazione Lampugnanobus
- Take the train from Sesto S.Giovanni to Chiavennatrain R13
- Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus 604
19h 4mCHF 64–111Train to Barcelona–El Prat Airport, fly to Milan Linate Airport, train, bus
- Take the train from Perpignan to Barcelona-Santstrain
- Fly from Barcelona–El Prat Airport (BCN) to Milan Linate Airport (LIN)plane BCN - LIN
- Take the train from Monza to Colicotrain
- Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
11h 57mCHF 59–227Train to Barcelona–El Prat Airport, fly to Il Caravaggio International Airport, train, bus
- Take the train from Perpignan to Barcelona-Santstrain
- Fly from Barcelona–El Prat Airport (BCN) to Il Caravaggio International Airport (BGY)plane BCN - BGY
- Take the train from Milano Centrale to Colicotrain
- Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
12h 22mCHF 73–250Train to Marseille Provence Airport, fly to Il Caravaggio International Airport, train, bus
- Take the train from Perpignan to Aix En Provence Tgvtrain
- Fly from Marseille Provence Airport (MRS) to Il Caravaggio International Airport (BGY)plane MRS - BGY
- Take the train from Milano Centrale to Colicotrain
- Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
13h 26mCHF 94–272
Perpignan to St. Moritz by train
Questions & Answers
The cheapest way to get from Perpignan to St. Moritz is to bus and train which costs SFr 60 - SFr 120 and takes 19h 4m.
The fastest way to get from Perpignan to St. Moritz is to train and fly which takes 10h and costs SFr 110 - SFr 370.
No, there is no direct bus from Perpignan to St. Moritz. However, there are services departing from Perpignan and arriving at St. Moritz, Bahnhof via Milano, Autostazione Lampugnano, Lugano, Via Ciani/Cornaredo and Lugano, Stazione Nord. The journey, including transfers, takes approximately 18h 10m.
No, there is no direct train from Perpignan to St. Moritz. However, there are services departing from Perpignan and arriving at St. Moritz via Montpellier Saint-Roch, Mulhouse Ville, Basel SBB and Chur. The journey, including transfers, takes approximately 14h 38m.
The distance between Perpignan and St. Moritz is 1190 km. The road distance is 886.1 km.
The best way to get from Perpignan to St. Moritz without a car is to train which takes 14h 38m and costs SFr 180 - SFr 600.
It takes approximately 14h 38m to get from Perpignan to St. Moritz, including transfers.
Perpignan to St. Moritz bus services, operated by FlixBus, depart from Perpignan station.
Perpignan to St. Moritz train services, operated by Société Nationale des Chemins de fer Français (SNCF), depart from Perpignan station.
The best way to get from Perpignan to St. Moritz is to train which takes 14h 38m and costs SFr 180 - SFr 600. Alternatively, you can bus, which costs SFr 65 - SFr 120 and takes 18h 10m.
What companies run services between Perpignan, France and St. Moritz, Switzerland?
You can take a train from Perpignan to St. Moritz via Montpellier Saint-Roch, Mulhouse Ville, Basel Sbb, Basel SBB, and Chur in around 14h 38m. Alternatively, you can take a bus from Perpignan to St. Moritz, Bahnhof via Milano, Autostazione Lampugnano, Lugano, Lugano, Via Ciani/Cornaredo, Lugano, Stazione, and Lugano, Stazione Nord in around 18h 10m.
- Website
- ryanair.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Tuesday to Saturday
- Estimated price
- CHF 24–160
Flights from Barcelona–El Prat Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- CHF 28–120
Flights from Barcelona–El Prat Airport to Il Caravaggio International Airport via Palma Mallorca
- Ave. Duration
- 4h 16m
- When
- Thursday, Friday, and Sunday
- Estimated price
- CHF 28–120
Flights from Barcelona–El Prat Airport to Il Caravaggio International Airport via Ibiza
- Ave. Duration
- 4h 25m
- When
- Monday, Tuesday, Wednesday, Saturday, and Sunday
- Estimated price
- CHF 28–120
Flights from Marseille Provence Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 10m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- CHF 30–150
- Website
- easyjet.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 43m
- When
- Every day
- Estimated price
- CHF 15–95
Flights from Barcelona–El Prat Airport to Milan Linate Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- CHF 24–130
- Website
- vueling.com
Flights from Barcelona–El Prat Airport to Zurich Airport
- Ave. Duration
- 1h 57m
- When
- Every day
- Estimated price
- CHF 35–130
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 42m
- When
- Every day
- Estimated price
- CHF 17–90
- Website
- swiss.com
Flights from Barcelona–El Prat Airport to Zurich Airport
- Ave. Duration
- 1h 46m
- When
- Every day
- Estimated price
- CHF 60–240
- Website
- flyulendo.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 50m
- When
- Every day
- Estimated price
- CHF 15–85
- Website
- ita-airways.com
Flights from Barcelona–El Prat Airport to Milan Linate Airport via Palma Mallorca
- Ave. Duration
- 4h 5m
- When
- Saturday
- Estimated price
- CHF 70–170
Flights from Barcelona–El Prat Airport to Milan Linate Airport via Rome
- Ave. Duration
- 4h 20m
- When
- Monday to Friday
- Estimated price
- CHF 70–170
- Website
- singaporeair.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 40m
- When
- Wednesday, Thursday, and Sunday
- Estimated price
- CHF 50–490
Rome2Rio's guide to Société Nationale des Chemins de fer Français (SNCF)
Contact Details
- Phone
- +33 1 84 94 36 35
- Website
- track.effiliation.com
Train from Perpignan to Montpellier Saint-Roch
- Ave. Duration
- 1h 59m
- Frequency
- Every 4 hours
- Estimated price
- CHF 21–55
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
Train from Valence Tgv Rhone-Alpes Sud to Geneve
- Ave. Duration
- 3h 13m
- Frequency
- 3 times a day
- Estimated price
- CHF 30–90
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Perpignan to Montpellier Saint-Roch
- Ave. Duration
- 1h 41m
- Frequency
- 3 times a day
- Estimated price
- CHF 28–50
- Website
- https://www.sncf-connect.com/en-en
Train from Montpellier Saint-Roch to Mulhouse Ville
- Ave. Duration
- 5h 12m
- Frequency
- 3 times a day
- Estimated price
- CHF 120–210
- Website
- https://www.sncf-connect.com/en-en
Train from Perpignan to Barcelona-Sants
- Ave. Duration
- 1h 25m
- Frequency
- Twice daily
- Estimated price
- CHF 30–55
- Website
- https://www.sncf-connect.com/en-en
Train from Perpignan to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 2h 48m
- Frequency
- Every 4 hours
- Estimated price
- CHF 65–110
- Website
- https://www.sncf-connect.com/en-en
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Perpignan to Montpellier Saint-Roch
- Ave. Duration
- 1h 29m
- Frequency
- 4 times a day
- Estimated price
- CHF 16–28
- Website
- https://www.renfe.com/es/en
Train from Perpignan to Barcelona-Sants
- Ave. Duration
- 1h 24m
- Frequency
- Twice daily
- Estimated price
- CHF 19–35
- Website
- https://www.renfe.com/es/en
Train from Perpignan to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 2h 50m
- Frequency
- Twice daily
- Estimated price
- CHF 35–65
- Website
- https://www.renfe.com/es/en
Train from Perpignan to Aix En Provence Tgv
- Ave. Duration
- 3h 9m
- Frequency
- Twice daily
- Estimated price
- CHF 30–55
- Website
- https://www.renfe.com/es/en
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Basel SBB to Chur
- Ave. Duration
- 2h 15m
- Frequency
- Every 3 hours
- Estimated price
- CHF 65–190
- Website
- https://www.sbb.ch/en
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- CHF 26–80
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Chur
- Ave. Duration
- 1h 15m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 35–110
- Website
- https://www.sbb.ch/en
Train from Genève to Brig
- Ave. Duration
- 2h 27m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 65–190
- Website
- https://www.sbb.ch/en
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Basel SBB to Chur
- Ave. Duration
- 2h 15m
- Frequency
- 4 times a day
- Estimated price
- CHF 15–19
- Schedules at
- sbb-deutschland.de
- Phone
- +41 81 288 65 65
- railservice@rhb.ch
- Website
- rhb.ch
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Hourly
- Website
- https://www.rhb.ch/en/
- Phone
- +41 58 580 70 70
- info@sob.ch
- Website
- sob.ch
Train from Zürich HB to Chur
- Ave. Duration
- 1h 36m
- Frequency
- Hourly
- Estimated price
- CHF 35–55
- Schedules at
- sob.ch
- Phone
- +41 81 288 65 65
- info@glacierexpress.ch
- Website
- glacierexpress.ch
Train from Brig to St. Moritz
- Ave. Duration
- 6h 15m
- Frequency
- 3 times a day
- Schedules at
- glacierexpress.ch
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Sesto S.Giovanni to Chiavenna
- Ave. Duration
- 2h 33m
- Frequency
- Once a week
- Estimated price
- CHF 7–9
- Website
- https://www.trenord.it/en/
Train from Malpensa Aeroporto T1 to Milano Centrale
- Ave. Duration
- 56 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4–5
- Website
- https://www.trenord.it/en/
Train from Milano Centrale to Colico
- Ave. Duration
- 1h 24m
- Frequency
- Hourly
- Estimated price
- CHF 6–8
- Website
- https://www.trenord.it/en/
Train from Monza to Colico
- Ave. Duration
- 1h 12m
- Frequency
- Hourly
- Estimated price
- CHF 4–5
- Website
- https://www.trenord.it/en/
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Perpignan to Milan
- Ave. Duration
- 11h 15m
- Frequency
- 3 times a day
- Estimated price
- CHF 50–90
- Website
- https://www.flixbus.co.uk
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Milano, Autostazione Lampugnano to Lugano
- Ave. Duration
- 1h 10m
- Frequency
- Twice daily
- Estimated price
- CHF 4–9
- Website
- https://www.blablacar.co.uk/bus
Bus from Perpignan - Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 12h 35m
- Frequency
- Once daily
- Estimated price
- CHF 45–95
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +420 222 222 221
- info@regiojet.cz
- Website
- regiojet.com
Bus from Milano, Autostazione Lampugnano to Lugano
- Ave. Duration
- 1h 20m
- Frequency
- Once a week
- Estimated price
- CHF 4–7
- Website
- https://regiojet.com/
- Phone
- +41 (0)848 818 818
- info@postauto.ch
- Website
- postauto.ch
Bus from Lugano, Stazione Nord to St. Moritz, Bahnhof
- Ave. Duration
- 3h 20m
- Frequency
- Once daily
- Estimated price
- CHF 10–15
- Website
- https://www.postauto.ch
Bus from Chiavenna, Stazione to St. Moritz, Bahnhof
- Ave. Duration
- 1h 38m
- Frequency
- Hourly
- Estimated price
- CHF 5–8
- Website
- https://www.postauto.ch
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
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Train travel in France: A guide to SNCF
Read the travel guide
More Questions & Answers
Perpignan to St. Moritz bus services, operated by FlixBus, arrive at Milan station.
Perpignan to St. Moritz train services, operated by Société Nationale des Chemins de fer Français (SNCF), arrive at Montpellier Saint-Roch station.
Yes, the driving distance between Perpignan to St. Moritz is 886 km. It takes approximately 10h 58m to drive from Perpignan to St. Moritz.
Book your Perpignan to St. Moritz train tickets online with Omio.
There are 2311+ hotels available in St. Moritz.






























































