There are 10 ways to get from Perpignan to St. Moritz by train (TGV, Renfe), bus, car, train, plane, or train (Renfe, TGV)
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 46mCHF 141–428Bus, train
cheapest- 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 37–109Bus
- Take the bus from Perpignan to Milanbus
- Take the bus from Milano, Autostazione Lampugnano to Luganobus 076 / ...
- Take the bus from Lugano, Stazione Nord to St. Moritz, Bahnhofbus 631
18h 11mCHF 53–134Drive 885.8 km
- Drive from Perpignan to St. Moritzcar 885.8 km
10h 59mCHF 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
10h 4mCHF 116–388Train via Lyon
- Take the train from Perpignan to Lyon Part Dieutrain
- Take the train from Lyon Part Dieu to Genevetrain Ter
- Take the train from Genève to Brigtrain Ec / ...
- Take the train from Brig to St. Moritztrain 902 / ...
16h 26mTrain to Fréjorgues Airport, fly to Zurich Airport, train
- Take the train from Perpignan to Montpellier Sud De Francetrain
- Fly from Fréjorgues Airport (MPL) to Zurich Airport (ZRH)plane MPL - ZRH
- Take the train from Zürich HB to Churtrain
- Take the train from Chur to St. Moritztrain
10hCHF 213–607Train to Barcelona–El Prat Airport, fly to Milano Malpensa Airport, train, bus
- 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 35mCHF 55–252Train 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
12h 3mCHF 60–306Train 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 19mCHF 71–318
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 35 - SFr 110 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 210 - SFr 650.
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 11m.
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 46m.
The distance between Perpignan and St. Moritz is 1190 km. The road distance is 885.8 km.
The best way to get from Perpignan to St. Moritz without a car is to train which takes 14h 46m and costs SFr 140 - SFr 430.
It takes approximately 14h 46m 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 46m and costs SFr 140 - SFr 430. Alternatively, you can bus, which costs SFr 50 - SFr 140 and takes 18h 11m.
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 46m. Alternatively, you can take a bus from Perpignan to St. Moritz, Bahnhof via Milano, Autostazione Lampugnano, Lugano, Via Ciani/Cornaredo, Lugano, Stazione, and Lugano, Stazione Nord in around 18h 11m.
- Website
- ryanair.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Monday, Friday, and Sunday
- Estimated price
- CHF 22–130
Flights from Barcelona–El Prat Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- CHF 30–130
- Website
- vueling.com
Flights from Barcelona–El Prat Airport to Zurich Airport
- Ave. Duration
- 1h 53m
- When
- Every day
- Estimated price
- CHF 30–140
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 38m
- When
- Every day
- Estimated price
- CHF 18–90
- Website
- easyjet.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 41m
- When
- Every day
- Estimated price
- CHF 20–90
Flights from Barcelona–El Prat Airport to Milan Linate Airport
- Ave. Duration
- 1h 40m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- CHF 25–120
- Website
- swiss.com
Flights from Barcelona–El Prat Airport to Zurich Airport
- Ave. Duration
- 1h 46m
- When
- Every day
- Estimated price
- CHF 50–200
Flights from Fréjorgues Airport to Zurich Airport
- Ave. Duration
- 1h 20m
- When
- Monday, Wednesday, and Friday
- Estimated price
- CHF 100–410
- 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 60–170
Flights from Barcelona–El Prat Airport to Milan Linate Airport via Rome
- Ave. Duration
- 4h 20m
- When
- Monday to Friday
- Estimated price
- CHF 60–170
- Website
- flyulendo.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- CHF 18–80
- Website
- singaporeair.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 35m
- When
- Wednesday, Thursday, and Sunday
- Estimated price
- CHF 45–190
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 28–40
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 1h 57m
- Frequency
- Every 3 hours
- Estimated price
- CHF 23–35
- 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 44m
- Frequency
- Twice daily
- Estimated price
- CHF 20–35
- Website
- https://www.sncf-connect.com/en-en
Train from Montpellier Saint-Roch to Mulhouse Ville
- Ave. Duration
- 5h 12m
- Frequency
- Twice daily
- Estimated price
- CHF 70–220
- Website
- https://www.sncf-connect.com/en-en
Train from Perpignan to Barcelona-Sants
- Ave. Duration
- 1h 25m
- Frequency
- Twice daily
- Estimated price
- CHF 35–120
- Website
- https://www.sncf-connect.com/en-en
Train from Perpignan to Lyon Part Dieu
- Ave. Duration
- 4h 1m
- Frequency
- Twice a week
- Estimated price
- CHF 40–110
- Website
- https://www.sncf-connect.com/en-en
Train from Lyon Part Dieu to Geneve
- Ave. Duration
- 1h 50m
- Frequency
- 5 times a week
- Estimated price
- CHF 40–120
- Website
- https://www.sncf-connect.com/en-en
Train from Perpignan to Montpellier Sud De France
- Ave. Duration
- 1h 44m
- Frequency
- 4 times a day
- Estimated price
- CHF 21–35
- 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 40m
- Frequency
- 4 times a day
- Estimated price
- CHF 13–18
- Website
- https://www.renfe.com/es/en
Train from Perpignan to Barcelona-Sants
- Ave. Duration
- 1h 24m
- Frequency
- Twice daily
- Estimated price
- CHF 15–20
- Website
- https://www.renfe.com/es/en
Train from Perpignan to Lyon Part Dieu
- Ave. Duration
- 3h 29m
- Frequency
- Twice daily
- Estimated price
- CHF 35–50
- Website
- https://www.renfe.com/es/en
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Basel SBB to Chur
- Ave. Duration
- 2h 19m
- Frequency
- Every 3 hours
- Estimated price
- CHF 40–75
- Website
- https://www.sbb.ch/en
Train from Chur to St. Moritz
- Ave. Duration
- 1h 55m
- Frequency
- Once daily
- Estimated price
- CHF 35–60
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Chur
- Ave. Duration
- 1h 14m
- Frequency
- Hourly
- Estimated price
- CHF 23–45
- Website
- https://www.sbb.ch/en
Train from Genève to Brig
- Ave. Duration
- 2h 27m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 35–70
- 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–20
- Schedules at
- sbb-deutschland.de
- Phone
- +41 81 288 65 65
- Website
- rhb.ch
Train from Chur to St. Moritz
- Ave. Duration
- 1h 55m
- 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
- 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
- 54 min
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- https://www.trenord.it/en/
Train from Milano Centrale to Colico
- Ave. Duration
- 1h 26m
- Frequency
- Hourly
- Estimated price
- CHF 6–8
- Website
- https://www.trenord.it/en/
Train from Monza to Colico
- Ave. Duration
- 1h 14m
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- https://www.trenord.it/en/
- Phone
- +39 02-72494949
- Website
- malpensaexpress.it
Train from Malpensa Aeroporto T1 to Milano Centrale
- Ave. Duration
- 54 min
- Frequency
- Hourly
- Estimated price
- CHF 14
- Website
- https://www.malpensaexpress.it/en/
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Perpignan to Milan
- Ave. Duration
- 11h 15m
- Frequency
- Once daily
- Estimated price
- CHF 30–95
- Website
- https://www.flixbus.co.uk
Bus from Milano, Autostazione Lampugnano to Lugano
- Ave. Duration
- 1h 15m
- Frequency
- Every 4 hours
- Estimated price
- CHF 7–23
- Website
- https://www.flixbus.co.uk
- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Milano, Autostazione Lampugnano to Lugano
- Ave. Duration
- 1h 45m
- Frequency
- Once daily
- Estimated price
- CHF 6–20
- Website
- https://www.itabus.it/en/home
Bus from Perpignan - Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 10h 55m
- Frequency
- 5 times a week
- Estimated price
- CHF 22–60
- Website
- https://www.itabus.it/en/home
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Milano, Autostazione Lampugnano to Lugano
- Ave. Duration
- 1h 10m
- Frequency
- Once daily
- Estimated price
- CHF 7–15
- Website
- https://www.blablacar.co.uk/bus
Bus from Perpignan - Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 12h 35m
- Frequency
- Twice daily
- Estimated price
- CHF 29–90
- 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 9–12
- 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 59m to drive from Perpignan to St. Moritz.
Book your Perpignan to St. Moritz train tickets online with Omio.
There are 2097+ hotels available in St. Moritz.



































































