There are 8 ways to get from St. Moritz to Perugia by train (Trenitalia), 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 via Monza
best- Take the train from St. Moritz to Tiranotrain R19 / ...
- Take the train from Tirano to Monzatrain Re8
- Take the train from Milano P.Garibaldi to Perugiatrain Fr
10h 49mBus, train
cheapest- Take the bus from St. Moritz, Bahnhof to Lugano, Stazione Nordbus 631
- Take the train from Lugano to Milano Centraletrain
- Take the bus from Milan to Perugia Train Station Bus Stopbus
12h 58m€64–103Bus
- Take the bus from St. Moritz, Bahnhof to Dongo, piazza Paracchinibus 631
- Take the bus from Menaggio Piazza Roma to Como Stazione Autolineebus
- Take the bus from Como to Florence Villa Constanza Bus Stationbus
- Take the bus from Florence to Perugiabus
11h 56m€102–147Drive 593.5 km
- Drive from St. Moritz to Perugiacar 593.5 km
7h 6m€108–155Train, fly to Florence Peretola Airport
- Take the train from St. Moritz to Churtrain
- Take the train from Chur to Zürich HBtrain
- Fly from Zurich Airport (ZRH) to Florence Peretola Airport (FLR)plane ZRH - FLR
- Take the train from Firenze S.M.N. to Perugiatrain
10h 35m€182–454Train
- Take the train from St. Moritz to Tiranotrain R19 / ...
- Take the train from Tirano to Milano Centraletrain Re8
- Take the train from Milano Centrale to Perugiatrain Ic
12h 33mTrain, fly to Bologna Guglielmo Marconi Airport
- Take the train from St. Moritz to Churtrain
- Take the train from Chur to Zürich HBtrain
- Fly from Zurich Airport (ZRH) to Bologna Guglielmo Marconi Airport (BLQ)plane ZRH - BLQ
- Take the train from Bologna Centrale to Perugiatrain
11h 8m€180–477Train, fly to Fiumicino International Airport
- Take the train from St. Moritz to Churtrain
- Take the train from Chur to Zürich HBtrain
- Fly from Zurich Airport (ZRH) to Fiumicino International Airport (FCO)plane ZRH - FCO
- Take the train from Roma Termini to Folignotrain
11h 41m€127–326
Zurich Airport (ZRH) to Florence Peretola Airport (FLR) flights
Comparing Your Travel Options
The cheapest way to get from St. Moritz to Perugia is to bus and train which costs €60 - €110 and takes 12h 58m.
The fastest way to get from St. Moritz to Perugia is to drive which takes 7h 6m and costs €100 - €160.
No, there is no direct bus from St. Moritz to Perugia. However, there are services departing from St. Moritz, Bahnhof and arriving at Perugia via Dongo Monumento Piazza Paracchini, Menaggio Piazza Roma, Como Stazione Lago, Como and Florence. The journey, including transfers, takes approximately 11h 56m.
No, there is no direct train from St. Moritz to Perugia. However, there are services departing from St. Moritz and arriving at Perugia via Tirano, Monza and Milano P.Garibaldi. The journey, including transfers, takes approximately 10h 49m.
The distance between St. Moritz and Perugia is 652 km. The road distance is 593.5 km.
The best way to get from St. Moritz to Perugia without a car is to train via Monza which takes 10h 49m and costs .
It takes approximately 10h 49m to get from St. Moritz to Perugia, including transfers.
St. Moritz to Perugia bus services, operated by PostAuto AG, depart from St. Moritz, Bahnhof station.
St. Moritz to Perugia train services, operated by Rhätische Bahn, depart from St. Moritz station.
The best way to get from St. Moritz to Perugia is to train via Monza which takes 10h 49m and costs . Alternatively, you can bus, which costs €100 - €150 and takes 11h 56m.
What companies run services between St. Moritz, Switzerland and Perugia, Italy?
You can take a train from St. Moritz to Perugia via Tirano, Monza, and Milano P.Garibaldi in around 10h 49m. Alternatively, you can take a bus from St. Moritz, Bahnhof to Perugia via Dongo Monumento Piazza Paracchini, Menaggio Piazza Roma, Como Stazione Autolinee, Como Stazione Lago, Como - S. Zenone, Como, and Florence in around 11h 56m.
- Website
- ita-airways.com
Flights from Zurich Airport to Florence Peretola Airport
- Ave. Duration
- 1h 13m
- When
- Every day
- Estimated price
- €85–360
Flights from Zurich Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 1h 6m
- When
- Every day
- Estimated price
- €85–440
Flights from Zurich Airport to Fiumicino International Airport
- Ave. Duration
- 1h 34m
- When
- Every day
- Estimated price
- €70–240
Flights from Zurich Airport to Fiumicino International Airport via Florence Peretola Airport
- Ave. Duration
- 3h 5m
- When
- Every day
- Estimated price
- €130–230
Flights from Zurich Airport to Fiumicino International Airport via Venice
- Ave. Duration
- 3h 20m
- When
- Every day
- Estimated price
- €70–240
Flights from Zurich Airport to Fiumicino International Airport via Bologna Guglielmo Marconi Airport
- Ave. Duration
- 3h 20m
- When
- Monday, Tuesday, Wednesday, Friday, and Sunday
- Estimated price
- €130–230
- Website
- swiss.com
Flights from Zurich Airport to Florence Peretola Airport
- Ave. Duration
- 1h 13m
- When
- Every day
- Estimated price
- €85–360
Flights from Zurich Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 1h 6m
- When
- Every day
- Estimated price
- €85–440
Flights from Zurich Airport to Fiumicino International Airport
- Ave. Duration
- 1h 34m
- When
- Every day
- Estimated price
- €70–240
Flights from Zurich Airport to Fiumicino International Airport via Bologna Guglielmo Marconi Airport
- Ave. Duration
- 3h 20m
- When
- Monday, Tuesday, Wednesday, Friday, and Sunday
- Estimated price
- €130–230
Flights from Zurich Airport to Fiumicino International Airport via Venice
- Ave. Duration
- 3h 30m
- When
- Every day
- Estimated price
- €70–240
- Website
- lufthansa.com
Flights from Zurich Airport to Florence Peretola Airport via Munich
- Ave. Duration
- 3h 7m
- When
- Every day
- Estimated price
- €160–550
- Website
- airdolomiti.it
Flights from Zurich Airport to Florence Peretola Airport via Munich
- Ave. Duration
- 3h 5m
- When
- Friday and Saturday
- Estimated price
- €160–550
- Website
- easyjet.com
Flights from Zurich Airport to Fiumicino International Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- €35–140
- Phone
- +41 81 288 65 65
- [email protected]
- Website
- Rhätische Bahn
Train from St. Moritz to Tirano
- Ave. Duration
- 2h 35m
- Frequency
- Hourly
- Website
- Rhätische Bahn
Train from St. Moritz to Chur
- Ave. Duration
- 1h 57m
- Frequency
- Hourly
- Website
- Rhätische Bahn
Train from St. Moritz to Tirano
- Ave. Duration
- 2h 35m
- Frequency
- Hourly
- Website
- Rhätische Bahn
Train from St. Moritz to Chur
- Ave. Duration
- 1h 57m
- Frequency
- Hourly
- Website
- Rhätische Bahn
Train from St. Moritz to Chur
- Ave. Duration
- 1h 57m
- Frequency
- Hourly
- Website
- Rhätische Bahn
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Tirano to Monza
- Ave. Duration
- 2h 19m
- Frequency
- Hourly
- Estimated price
- €10–13
- Website
- Trenord
Train from Tirano to Milano Centrale
- Ave. Duration
- 2h 33m
- Frequency
- Hourly
- Estimated price
- €10–13
- Website
- Trenord
- Phone
- +39 06 5210550
- Website
- Trenitalia Frecce
Train from Milano P.Garibaldi to Perugia
- Ave. Duration
- 3h 42m
- Frequency
- 6 times a week
- Estimated price
- €60–110
- Website
- Trenitalia Frecce
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 31m
- Frequency
- 6 times a week
- Estimated price
- €20–35
- Website
- Trenitalia Frecce
Train from Bologna Centrale to Perugia
- Ave. Duration
- 2h 18m
- Frequency
- 6 times a week
- Estimated price
- €30–60
- Website
- Trenitalia Frecce
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 42m
- Frequency
- Once daily
- Estimated price
- €20–35
- Website
- Trenitalia Frecce
Train from St. Moritz to Chur
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- €30–50
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Chur to Zürich HB
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- €40–70
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Lugano to Milano Centrale
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- €28–45
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from St. Moritz to Chur
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- €30–50
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Chur to Zürich HB
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- €40–70
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from St. Moritz to Chur
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- €30–50
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Chur to Zürich HB
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- €40–70
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- +41 58 580 70 70
- Website
- Schweizerische Südostbahn AG
Train from Chur to Zürich HB
- Ave. Duration
- 1h 37m
- Frequency
- Hourly
- Estimated price
- €35–60
- Schedules at
- Schweizerische Südostbahn AG
Train from Chur to Zürich HB
- Ave. Duration
- 1h 37m
- Frequency
- Hourly
- Estimated price
- €35–60
- Schedules at
- Schweizerische Südostbahn AG
Train from Chur to Zürich HB
- Ave. Duration
- 1h 37m
- Frequency
- Hourly
- Estimated price
- €35–60
- Schedules at
- Schweizerische Südostbahn AG
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 2h 23m
- Frequency
- Every 4 hours
- Estimated price
- €18–25
- Website
- Trenitalia
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 47m
- Frequency
- Hourly
- Estimated price
- €17–25
- Website
- Trenitalia
- Phone
- +39 06 68475475
- Website
- Trenitalia Intercity
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 25m
- Frequency
- Once daily
- Estimated price
- €16–30
- Website
- Trenitalia Intercity
Train from Milano Centrale to Perugia
- Ave. Duration
- 5h 37m
- Frequency
- Once daily
- Estimated price
- €50–90
- Website
- Trenitalia Intercity
Train from Bologna Centrale to Perugia
- Ave. Duration
- 3h 11m
- Frequency
- Once daily
- Estimated price
- €26–50
- Website
- Trenitalia Intercity
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 59m
- Frequency
- 3 times a day
- Estimated price
- €16–29
- Website
- Trenitalia Intercity
- Phone
- +41 (0)848 818 818
- [email protected]
- Website
- PostAuto AG
Bus from St. Moritz, Bahnhof to Dongo, piazza Paracchini
- Ave. Duration
- 2h 10m
- Frequency
- Once daily
- Estimated price
- €8–12
- Website
- PostAuto AG
Bus from St. Moritz, Bahnhof to Lugano, Stazione Nord
- Ave. Duration
- 3h 35m
- Frequency
- Once daily
- Estimated price
- €11–16
- Website
- PostAuto AG
- Phone
- +039 031 247111
- [email protected]
- Website
- ASF Autolinee S.r.l.
Bus from Menaggio Piazza Roma to Como Stazione Autolinee
- Ave. Duration
- 1h 10m
- Frequency
- Hourly
- Estimated price
- €18–25
- Website
- ASF Autolinee S.r.l.
- Phone
- +39 0362 185 0590
- [email protected]
- Website
- Onebus
Bus from Como to Florence Villa Constanza Bus Station
- Ave. Duration
- 3h 7m
- Frequency
- Once a week
- Estimated price
- €60–85
- Website
- Onebus
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Florence to Perugia
- Ave. Duration
- 1h 50m
- Frequency
- Twice daily
- Estimated price
- €13–20
- Website
- Flixbus
- Phone
- +39 06 88 93 82 32
- Website
- Itabus S.p.A.
Bus from Milan to Perugia Train Station Bus Stop
- Ave. Duration
- 5h 55m
- Frequency
- Once daily
- Estimated price
- €23–40
- Website
- Itabus S.p.A.
Want to know more about travelling around Italy
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
Italy Travel Guides
Read the travel guide
5 incredible day trips from Florence by train
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
Booking & Getting There
St. Moritz to Perugia bus services, operated by PostAuto AG, arrive at Dongo, piazza Paracchini station.
St. Moritz to Perugia train services, operated by Rhätische Bahn, arrive at Tirano station.
Yes, the driving distance between St. Moritz to Perugia is 593 km. It takes approximately 7h 6m to drive from St. Moritz to Perugia.
Book your St. Moritz to Perugia train tickets online with Omio.
There are 2141+ hotels available in Perugia.











































