There are 10 ways to get from Perpignan to Milan by train, plane, train (TGV, Renfe, Trenitalia), bus, or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train to Barcelona–El Prat Airport, fly to Milan Linate Airport
best- Take the train from Perpignan to Barcelona-Santstrain
- Fly from Barcelona–El Prat Airport (BCN) to Milan Linate Airport (LIN)plane BCN - LIN
5h 54m€55–241Bus
cheapest- Take the bus from Perpignan - Bus Station to Milano, Autostazione Lampugnanobus BlaBlaCar Bus
12h 35m€40–110Train
- Take the train from Perpignan to Valence Tgv Rhone-Alpes Sudtrain Tgv
- Take the train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eauxtrain Ter
- Take the train from Chambery Challes Les Eaux to Milano Centraletrain Fr
9h 50m€114–220Bus via Duomo M1
- Take the bus from Perpignan to Milanbus FlixBus N740
11h 34m€74–110Drive 731 km
- Drive from Perpignan to Milancar 731 km
8h 39m€119–171Train to Barcelona–El Prat Airport, fly to Milano Malpensa Airport, train
- 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 Porta Garibalditrain
6h 38m€45–164Train to Barcelona–El Prat Airport, fly to Il Caravaggio International Airport, 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 bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
6h 43m€59–271Train to Marseille Provence Airport, fly to Milano Malpensa Airport, train
- Take the train from Perpignan to Aix En Provence Tgvtrain
- Fly from Marseille Provence Airport (MRS) to Milano Malpensa Airport (MXP)plane MRS - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
7h 59m€103–259Train, train to Toulouse-Blagnac Airport, fly to Il Caravaggio International Airport, bus
- Take the train from Perpignan to Narbonnetrain
- Take the train from Narbonne to Toulouse Matabiautrain
- Fly from Toulouse-Blagnac Airport (TLS) to Il Caravaggio International Airport (BGY)plane TLS - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
7h 54m€92–358Fly Perpignan-Rivesaltes Airport to Milan Linate Airport
- Fly from Perpignan-Rivesaltes Airport (PGF) to Milan Linate Airport (LIN)plane PGF - LIN
6h 39m€112–654
Perpignan to Milan by train
Comparing Your Travel Options
The cheapest way to get from Perpignan to Milan is to bus which costs €40 - €110 and takes 12h 35m.
The fastest way to get from Perpignan to Milan is to train and fly which takes 5h 54m and costs €55 - €250.
Yes, there is a direct bus departing from Perpignan - Bus Station station and arriving at Milano, Autostazione Lampugnano. Services depart twice daily, and operate every day. The journey takes approximately 12h 35m.
No, there is no direct train from Perpignan to Milan. However, there are services departing from Perpignan and arriving at Milano Centrale via Valence Tgv Rhone-Alpes Sud and Chambery Challes Les Eaux. The journey, including transfers, takes approximately 9h 50m.
The distance between Perpignan and Milan is 946 km. The road distance is 731 km.
The best way to get from Perpignan to Milan without a car is to train which takes 9h 50m and costs €110 - €220.
It takes approximately 5h 54m to get from Perpignan to Milan, including transfers.
Perpignan to Milan bus services, operated by FlixBus, depart from Perpignan station.
Perpignan to Milan train services, operated by TGV inOui, depart from Perpignan station.
The best way to get from Perpignan to Milan is to train which takes 9h 50m and costs €110 - €220. Alternatively, you can bus via Duomo M1, which costs €70 - €110 and takes 11h 34m, you could also fly, which costs €110 - €700 and takes 6h 39m.
What companies run services between Perpignan, France and Milan, Italy?
You can take a train from Perpignan to Milano Centrale via Valence Tgv Rhone-Alpes Sud and Chambery Challes Les Eaux in around 9h 50m. Alternatively, FlixBus operates a bus from Perpignan to Milan twice daily. Tickets cost €70–110 and the journey takes 11h 15m.
- Website
- ryanair.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Thursday, Sunday, Monday, Friday, and Saturday
- Estimated price
- €21–55
Flights from Barcelona–El Prat Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- €29–180
Flights from Toulouse-Blagnac Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- €45–250
- Website
- easyjet.com
Flights from Barcelona–El Prat Airport to Milan Linate Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- €26–130
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 42m
- When
- Every day
- Estimated price
- €15–95
Flights from Perpignan-Rivesaltes Airport to Milan Linate Airport via Paris Orly
- Ave. Duration
- 4h 50m
- When
- Monday, Tuesday, Wednesday, Thursday, and Saturday
- Estimated price
- €110–650
- Website
- vueling.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 38m
- When
- Every day
- Estimated price
- €18–100
- Website
- ita-airways.com
Flights from Barcelona–El Prat Airport to Milan Linate Airport via Rome
- Ave. Duration
- 4h 10m
- When
- Every day
- Estimated price
- €95–210
Flights from Perpignan-Rivesaltes Airport to Milan Linate Airport via Paris Orly
- Ave. Duration
- 4h 47m
- When
- Friday, Sunday, Monday, Tuesday, Wednesday, and Thursday
- Estimated price
- €110–650
- Website
- twinjet.fr
Flights from Marseille Provence Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 15m
- When
- Monday to Friday
- Estimated price
- €450–950
- Website
- flyulendo.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- €15–110
- Phone
- +33 1 84 94 36 35
- Website
- TGV inOui
Train from Perpignan to Barcelona-Sants
- Ave. Duration
- 1h 24m
- Frequency
- Twice daily
- Estimated price
- €35–55
- Website
- TGV inOui
Train from Perpignan to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 3h 5m
- Frequency
- Every 4 hours
- Estimated price
- €75–110
- Website
- TGV inOui
Train from Perpignan to Barcelona-Sants
- Ave. Duration
- 1h 24m
- Frequency
- Twice daily
- Estimated price
- €35–55
- Website
- TGV inOui
Train from Perpignan to Barcelona-Sants
- Ave. Duration
- 1h 24m
- Frequency
- Twice daily
- Estimated price
- €35–55
- Website
- TGV inOui
Train from Perpignan to Narbonne
- Ave. Duration
- 35 min
- Frequency
- Every 4 hours
- Estimated price
- €12–19
- Website
- TGV inOui
Train from Narbonne to Toulouse Matabiau
- Ave. Duration
- 1h 16m
- Frequency
- 3 times a day
- Estimated price
- €30–45
- Website
- TGV inOui
Rome2Rio's guide to Renfe Viajeros
Contact DetailsContact Details
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Perpignan to Barcelona-Sants
- Ave. Duration
- 1h 24m
- Frequency
- Twice daily
- Estimated price
- €23–35
- Website
- Renfe Viajeros
Train from Perpignan to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 2h 52m
- Frequency
- Twice daily
- Estimated price
- €45–70
- Website
- Renfe Viajeros
Train from Perpignan to Barcelona-Sants
- Ave. Duration
- 1h 24m
- Frequency
- Twice daily
- Estimated price
- €23–35
- Website
- Renfe Viajeros
Train from Perpignan to Barcelona-Sants
- Ave. Duration
- 1h 24m
- Frequency
- Twice daily
- Estimated price
- €23–35
- Website
- Renfe Viajeros
Train from Perpignan to Aix En Provence Tgv
- Ave. Duration
- 3h 9m
- Frequency
- Twice daily
- Estimated price
- €40–60
- Website
- Renfe Viajeros
Train from Perpignan to Narbonne
- Ave. Duration
- 35 min
- Frequency
- 3 times a day
- Estimated price
- €8–12
- Website
- Renfe Viajeros
- Phone
- +33 1 84 94 36 35
- Website
- Oui.SNCF
Train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eaux
- Ave. Duration
- 1h 58m
- Frequency
- Hourly
- Estimated price
- €27–50
- Website
- Oui.SNCF
Train from Perpignan to Narbonne
- Ave. Duration
- 42 min
- Frequency
- Hourly
- Estimated price
- €11–19
- Website
- Oui.SNCF
Train from Narbonne to Toulouse Matabiau
- Ave. Duration
- 1h 34m
- Frequency
- Hourly
- Estimated price
- €26–45
- Website
- Oui.SNCF
- Phone
- +33 4 13 94 30 50
- Website
- Zou! Lignes Express Régionales
Train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eaux
- Ave. Duration
- 1h 54m
- Frequency
- Every 2 hours
- Estimated price
- €40–55
- Website
- Zou! Lignes Express Régionales
Train from Perpignan to Narbonne
- Ave. Duration
- 45 min
- Frequency
- Every 4 hours
- Estimated price
- €16–23
- Website
- Zou! Lignes Express Régionales
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Chambery Challes Les Eaux to Milano Centrale
- Ave. Duration
- 3h 21m
- Frequency
- Twice daily
- Estimated price
- €40–55
- Website
- Trenitalia
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Perpignan to Milan
- Ave. Duration
- 11h 15m
- Frequency
- Twice daily
- Estimated price
- €70–110
- Website
- Flixbus
Bus from Perpignan - Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 12h 35m
- Frequency
- Twice a week
- Estimated price
- €70–110
- Website
- Flixbus
- [email protected]
- Website
- TERRAVISION
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–23
- Website
- TERRAVISION
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–23
- Website
- TERRAVISION
- Phone
- 035.319366
- [email protected]
- Website
- orioshuttle.com
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €11–14
- Schedules at
- orioshuttle.com
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €11–14
- Schedules at
- orioshuttle.com
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Perpignan - Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 12h 35m
- Frequency
- 3 times a day
- Estimated price
- €60–110
- Website
- BlaBlaCar Bus
- Phone
- +39 06 88 93 82 32
- Website
- Itabus S.p.A.
Bus from Perpignan - Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 10h 55m
- Frequency
- Once daily
- Estimated price
- €40–80
- 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
Getting to Milan from the airport
Read the travel guide
Train travel in Spain: A guide to Renfe
Read the travel guide
Booking & Getting There
Perpignan to Milan bus services, operated by FlixBus, arrive at Milan station.
Perpignan to Milan train services, operated by TGV inOui, arrive at Valence Tgv Rhone-Alpes Sud station.
Yes, the driving distance between Perpignan to Milan is 731 km. It takes approximately 8h 39m to drive from Perpignan to Milan.
Book your Perpignan to Milan train tickets online with Omio.
Book your Perpignan to Milan bus tickets online with Omio.
There are 13810+ hotels available in Milan.












































