There are 9 ways to get from Perugia to Martigny by train (Trenitalia), bus, car, plane, or train
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 Sion (Trenitalia)
best- Take the train from Perugia to Rho-Fiera Milanotrain Fr
- Take the train from Rho-Fiera Milano to Siontrain Ec
7h 54mCHF 79–206Bus via Milan
cheapest- Take the bus from Perugia Train Station Bus Stop to Milano, Autostazione Lampugnanobus
- Take the bus from Milano - Lampugnano M1 to Aosta Autostazionebus 150
- Take the bus from Aosta, Autostazione to Martigny, garebus 211
13hCHF 29–76Drive 694.1 km
- Drive from Perugia to Martignycar 694.1 km
7h 20mCHF 108–156Bus to Fiumicino International Airport, fly to Geneva International Airport, train
- Take the bus from Perugia to Fiumicino Aeroporto T3bus
- Fly from Fiumicino International Airport (FCO) to Geneva International Airport (GVA)plane FCO - GVA
- Take the train from Genève-Aéroport to Martignytrain
8h 18mCHF 80–253Train (Trenitalia)
- Take the train from Perugia to Milano Centraletrain Ic
- Take the train from Milano Centrale to Martignytrain Ec
9h 44mCHF 57–112Bus
- Take the bus from Perugia to Aostabus N504 / ...
- Take the bus from Aosta, Autostazione to Martigny, garebus 211
15h 10mCHF 61–85Bus to Fiumicino International Airport, fly to Milano Malpensa Airport, train
- Take the bus from Perugia to Fiumicino Aeroporto T3bus
- Fly from Fiumicino International Airport (FCO) to Milano Malpensa Airport (MXP)plane FCO - MXP
- Take the train from Gallarate to Domodossolatrain
- Take the train from Brig to Martignytrain
8h 38mCHF 95–291Bus to Fiumicino International Airport, fly to Milan Linate Airport, train
- Take the bus from Perugia to Fiumicino Aeroporto T3bus
- Fly from Fiumicino International Airport (FCO) to Milan Linate Airport (LIN)plane FCO - LIN
- Take the train from Milano Centrale to Brigtrain
- Take the train from Brig to Martignytrain
9h 6mCHF 110–342Train to Florence Peretola Airport, fly to Zurich Airport, train
- Take the train from Perugia to Firenze S.M.N.train
- Fly from Florence Peretola Airport (FLR) to Zurich Airport (ZRH)plane FLR - ZRH
- Take the train from Zürich Flughafen to Visptrain
- Take the train from Visp to Martignytrain
9h 44mCHF 152–422
Perugia to Martigny by train (Trenitalia)
Questions & Answers
The cheapest way to get from Perugia to Martigny is to bus via Milan which costs SFr 29 - SFr 80 and takes 13h.
The fastest way to get from Perugia to Martigny is to drive which takes 7h 20m and costs SFr 100 - SFr 160.
No, there is no direct bus from Perugia station to Martigny. However, there are services departing from Perugia Train Station Bus Stop and arriving at Martigny, gare via Milano - Lampugnano M1 and Aosta, Autostazione. The journey, including transfers, takes approximately 13h.
No, there is no direct train from Perugia to Martigny. However, there are services departing from Perugia and arriving at Martigny via Rho-Fiera Milano and Sion. The journey, including transfers, takes approximately 7h 54m.
The distance between Perugia and Martigny is 686 km. The road distance is 694.1 km.
The best way to get from Perugia to Martigny without a car is to train via Sion which takes 7h 54m and costs SFr 75 - SFr 210.
It takes approximately 7h 54m to get from Perugia to Martigny, including transfers.
Perugia to Martigny bus services, operated by Itabus S.p.A., depart from Perugia Train Station Bus Stop.
Perugia to Martigny train services, operated by Trenitalia Frecce, depart from Perugia station.
The best way to get from Perugia to Martigny is to train via Sion which takes 7h 54m and costs SFr 75 - SFr 210. Alternatively, you can bus via Milan, which costs SFr 29 - SFr 80 and takes 13h.
What companies run services between Perugia, Italy and Martigny, Switzerland?
You can take a train from Perugia to Martigny via Rho-Fiera Milano and Sion in around 7h 54m. Alternatively, you can take a bus from Perugia Train Station Bus Stop to Martigny, gare via Milano, Autostazione Lampugnano, Milano - Lampugnano M1, Aosta Autostazione, and Aosta, Autostazione in around 13h.
- Website
- ita-airways.com
Flights from Fiumicino International Airport to Geneva International Airport
- Ave. Duration
- 1h 37m
- When
- Every day
- Estimated price
- CHF 50–190
Flights from Fiumicino International Airport to Milan Linate Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- CHF 40–140
Flights from Florence Peretola Airport to Zurich Airport
- Ave. Duration
- 1h 16m
- When
- Every day
- Estimated price
- CHF 70–190
Flights from Florence Peretola Airport to Zurich Airport via Fiumicino International Airport
- Ave. Duration
- 3h 22m
- When
- Every day
- Estimated price
- CHF 65–260
- Website
- swiss.com
Flights from Fiumicino International Airport to Geneva International Airport
- Ave. Duration
- 1h 37m
- When
- Every day
- Estimated price
- CHF 50–190
Flights from Fiumicino International Airport to Geneva International Airport via Zurich Airport
- Ave. Duration
- 4h 5m
- When
- Every day
- Estimated price
- CHF 110–190
Flights from Florence Peretola Airport to Zurich Airport
- Ave. Duration
- 1h 16m
- When
- Every day
- Estimated price
- CHF 70–190
Flights from Florence Peretola Airport to Zurich Airport via Fiumicino International Airport
- Ave. Duration
- 3h 20m
- When
- Tuesday, Wednesday, Friday, Saturday, and Sunday
- Estimated price
- CHF 65–260
- Website
- aeroitalia.com
Flights from Fiumicino International Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- CHF 40–260
- Website
- flexflight.dk
Flights from Fiumicino International Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- CHF 40–260
- Website
- lufthansa.com
Flights from Fiumicino International Airport to Milan Linate Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- CHF 40–140
Flights from Florence Peretola Airport to Zurich Airport via Munich
- Ave. Duration
- 3h 5m
- When
- Every day
- Estimated price
- CHF 100–340
- Website
- easyjet.com
Flights from Fiumicino International Airport to Geneva International Airport
- Ave. Duration
- 1h 35m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- CHF 30–140
Flights from Fiumicino International Airport to Geneva International Airport via Nice
- Ave. Duration
- 3h 40m
- When
- Thursday and Sunday
- Estimated price
- CHF 30–140
- Website
- neosair.it
Flights from Fiumicino International Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 15m
- When
- Monday
- Estimated price
- CHF 120–410
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Perugia to Rho-Fiera Milano
- Ave. Duration
- 4h 1m
- Frequency
- 6 times a week
- Estimated price
- CHF 30–75
- Schedules at
- trenitalia.com
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 1h 37m
- Frequency
- 6 times a week
- Estimated price
- CHF 15–35
- Schedules at
- trenitalia.com
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Rho-Fiera Milano to Sion
- Ave. Duration
- 2h 30m
- Frequency
- 3 times a week
- Estimated price
- CHF 40–85
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 60–85
- 2nd Class
- CHF 40–60
Train from Milano Centrale to Martigny
- Ave. Duration
- 3h 6m
- Frequency
- 5 times a week
- Estimated price
- CHF 30–55
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 30–50
- 2nd Class
- CHF 40–55
Train from Brig to Martigny
- Ave. Duration
- 50 min
- Frequency
- 5 times a week
- Estimated price
- CHF 11–19
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 11–16
- 2nd Class
- CHF 14–19
Train from Milano Centrale to Brig
- Ave. Duration
- 2h 4m
- Frequency
- Every 4 hours
- Estimated price
- CHF 35–80
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 55–80
- 2nd Class
- CHF 35–50
Train from Visp to Martigny
- Ave. Duration
- 40 min
- Frequency
- 5 times a week
- Estimated price
- CHF 21–60
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 40–60
- 2nd Class
- CHF 21–28
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Genève-Aéroport to Martigny
- Ave. Duration
- 1h 47m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 26–50
- Website
- https://www.sbb.ch/en
Train from Brig to Martigny
- Ave. Duration
- 50 min
- Frequency
- Hourly
- Estimated price
- CHF 14–35
- Website
- https://www.sbb.ch/en
Train from Zürich Flughafen to Visp
- Ave. Duration
- 2h 19m
- Frequency
- Hourly
- Estimated price
- CHF 55–110
- Website
- https://www.sbb.ch/en
Train from Visp to Martigny
- Ave. Duration
- 40 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 13–27
- Website
- https://www.sbb.ch/en
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Perugia to Milano Centrale
- Ave. Duration
- 5h 38m
- Frequency
- Once daily
- Estimated price
- CHF 26–60
- Website
- https://www.trenitalia.com/en.html
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 1h 29m
- Frequency
- Once daily
- Estimated price
- CHF 11–20
- Website
- https://www.trenitalia.com/en.html
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 1m
- Frequency
- Every 2 hours
- Estimated price
- CHF 5–8
- Website
- https://www.trenord.it/en/
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Gallarate to Domodossola
- Ave. Duration
- 1h 40m
- Frequency
- Every 4 hours
- Estimated price
- CHF 8
- Website
- https://www.trenitalia.com/en.html
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 2h 7m
- Frequency
- Every 4 hours
- Estimated price
- CHF 14–19
- Website
- https://www.trenitalia.com/en.html
- Phone
- +41 27 720 47 47
- info@regionalps.ch
- Website
- regionalps.ch
Train from Brig to Martigny
- Ave. Duration
- 1h 4m
- Frequency
- Hourly
- Estimated price
- CHF 22–45
- Schedules at
- regionalps.ch
- 2nd Class Ticket
- CHF 22–26
- 1st Class Ticket
- CHF 39–45
Train from Visp to Martigny
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 23–46
- Schedules at
- regionalps.ch
- 2nd Class Ticket
- CHF 23–27
- 1st Class Ticket
- CHF 41–46
- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Perugia Train Station Bus Stop to Milano, Autostazione Lampugnano
- Ave. Duration
- 6h 40m
- Frequency
- Once daily
- Estimated price
- CHF 11–50
- Website
- https://www.itabus.it/en/home
- Phone
- 035 289000
- savda@savda.it
- Website
- aosta.arriva.it
Bus from Milano - Lampugnano M1 to Aosta Autostazione
- Ave. Duration
- 2h 30m
- Frequency
- 4 times a day
- Estimated price
- CHF 13–18
- Website
- https://aosta.arriva.it/en/
- Phone
- +41 27 721 68 40
- info@tmrsa.ch
- Website
- tmrsa.ch
Bus from Aosta, Autostazione to Martigny, gare
- Ave. Duration
- 1h 50m
- Frequency
- 5 times a week
- Estimated price
- CHF 5–8
- Website
- https://www.tmrsa.ch/en/
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Perugia to Fiumicino Aeroporto T3
- Ave. Duration
- 2h 25m
- Frequency
- Once daily
- Estimated price
- CHF 18–45
- Website
- https://www.flixbus.co.uk
Bus from Perugia to Aosta
- Ave. Duration
- 12h 20m
- Frequency
- Once daily
- Estimated price
- CHF 55–80
- Website
- https://www.flixbus.co.uk
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
Italy Travel Guides
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
More Questions & Answers
Perugia to Martigny bus services, operated by Itabus S.p.A., arrive at Milano, Autostazione Lampugnano station.
Perugia to Martigny train services, operated by Trenitalia Frecce, arrive at Rho-Fiera Milano station.
Yes, the driving distance between Perugia to Martigny is 694 km. It takes approximately 7h 20m to drive from Perugia to Martigny.
Book your Perugia to Martigny train tickets online with Omio.
There are 2563+ hotels available in Martigny.








































