There are 11 ways to get from Port-Vendres to Milan by train (TGV, Renfe, 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 Montpellier
best- Take the train from Port Vendres Ville to Montpellier Saint-Rochtrain Ter
- Take the train from Montpellier Saint-Roch 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
11h 13m€129–241Bus
cheapest- Take the bus from Perpignan to Milano, Autostazione Lampugnanobus N7758 / ...
13h 50m€42–112Drive 761.3 km
- Drive from Port-Vendres to Milancar 761.3 km
9h 1m€144–208Train to Barcelona–El Prat Airport, fly to Milan Linate Airport
- Take the train from Perpignan to Barcelona-Santstrain
- Fly from Barcelona–El Prat Airport (BCN) to Milan Linate Airport (LIN)plane BCN - LIN
7h 21m€59–262Train
- Take the train from Port Vendres Ville to Narbonnetrain Ter
- Take the train from Narbonne 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
11h 22m€120–237Train, bus
- Take the train from Perpignan to Marseille St Charlestrain 9725
- Take the bus from Marseille - Saint-Charles Bus Station to Milano, Autostazione Lampugnanobus BlaBlaCar Bus
14h 12m€82–132Train 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
8h 5m€49–175Train 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
8h 10m€63–272Train 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
9h 26m€107–271Fly Perpignan-Rivesaltes Airport to Milan Linate Airport
- Fly from Perpignan-Rivesaltes Airport (PGF) to Milan Linate Airport (LIN)plane PGF - LIN
8h€198–425Train to Barcelona–El Prat Airport, fly to Turin Caselle Airport, train
- Take the train from Perpignan to Barcelona-Santstrain
- Fly from Barcelona–El Prat Airport (BCN) to Turin Caselle Airport (TRN)plane BCN - TRN
- Take the train from Torino Porta di Susa to Milano Centraletrain
9h 20m€60–239
Port-Vendres to Milan by train
Comparing Your Travel Options
The cheapest way to get from Port-Vendres to Milan is to bus which costs €40 - €120 and takes 13h 50m.
The fastest way to get from Port-Vendres to Milan is to train and fly which takes 7h 21m and costs €55 - €270.
No, there is no direct bus from Port-Vendres to Milan. However, there are services departing from PORT-VENDRES - Obélisque and arriving at Milano, Autostazione Lampugnano via Perpignan. The journey, including transfers, takes approximately 13h 50m.
No, there is no direct train from Port-Vendres to Milan. However, there are services departing from Port Vendres Ville and arriving at Milano Centrale via Montpellier Saint-Roch, Valence Tgv Rhone-Alpes Sud and Chambery Challes Les Eaux. The journey, including transfers, takes approximately 11h 13m.
The distance between Port-Vendres and Milan is 895 km. The road distance is 761.3 km.
The best way to get from Port-Vendres to Milan without a car is to train via Montpellier which takes 11h 13m and costs €120 - €250.
It takes approximately 11h 13m to get from Port-Vendres to Milan, including transfers.
Port-Vendres to Milan bus services, operated by FlixBus, depart from Perpignan station.
Port-Vendres to Milan train services, operated by Société Nationale des Chemins de fer Français (SNCF), depart from Port Vendres Ville station.
The best way to get from Port-Vendres to Milan is to train via Montpellier which takes 11h 13m and costs €120 - €250. Alternatively, you can bus, which costs €40 - €120 and takes 13h 50m, you could also fly, which costs €190 - €430 and takes 8h.
What companies run services between Port-Vendres, France and Milan, Italy?
You can take a train from Port Vendres Ville to Milano Centrale via Montpellier Saint-Roch, Valence Tgv Rhone-Alpes Sud, and Chambery Challes Les Eaux in around 11h 13m. Alternatively, FlixBus operates a bus from Perpignan to Milano, Autostazione Lampugnano once daily. Tickets cost €70–110 and the journey takes 11h 40m. Two other operators also service this route.
- 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–60
Flights from Barcelona–El Prat Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- €29–170
Flights from Barcelona–El Prat Airport to Turin Caselle Airport
- Ave. Duration
- 1h 38m
- When
- Every day
- Estimated price
- €30–200
Flights from Barcelona–El Prat Airport to Turin Caselle Airport via Ibiza
- Ave. Duration
- 4h
- When
- Saturday
- Estimated price
- €30–200
- 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–100
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
- €120–650
- Website
- vueling.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 38m
- When
- Every day
- Estimated price
- €17–100
Flights from Barcelona–El Prat Airport to Turin Caselle Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €17–110
- Website
- ita-airways.com
Flights from Barcelona–El Prat Airport to Milan Linate Airport via Palma Mallorca
- Ave. Duration
- 4h 15m
- When
- Saturday
- 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
- €120–650
- Website
- flyulendo.com
Flights from Barcelona–El Prat Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €15–110
Flights from Barcelona–El Prat Airport to Turin Caselle Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Tuesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €11–85
- Website
- twinjet.fr
Flights from Marseille Provence Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 15m
- When
- Monday to Friday
- Estimated price
- €480–900
- Website
- airfrance.com
Flights from Perpignan-Rivesaltes Airport to Milan Linate Airport via Nantes, Paris Charles de Gaulle
- Ave. Duration
- 6h
- When
- Friday
- Estimated price
- €130–700
Rome2Rio's guide to Société Nationale des Chemins de fer Français (SNCF)
Contact Details
- Phone
- +33 1 84 94 36 35
- Website
- Oui.SNCF
Train from Port Vendres Ville to Montpellier Saint-Roch
- Ave. Duration
- 2h 33m
- Frequency
- 5 times a day
- Estimated price
- €35–60
- Website
- Oui.SNCF
Train from Montpellier Saint-Roch to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 1h 11m
- Frequency
- Once daily
- Estimated price
- €35–65
- Website
- Oui.SNCF
Train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eaux
- Ave. Duration
- 1h 53m
- Frequency
- Hourly
- Estimated price
- €28–50
- Website
- Oui.SNCF
Train from Port Vendres Ville to Narbonne
- Ave. Duration
- 1h 17m
- Frequency
- Every 4 hours
- Estimated price
- €17–28
- Website
- Oui.SNCF
Train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eaux
- Ave. Duration
- 1h 53m
- Frequency
- Hourly
- Estimated price
- €28–50
- Website
- Oui.SNCF
- Phone
- +33 4 13 94 30 50
- Website
- Zou! Lignes Express Régionales
Train from Port Vendres Ville to Montpellier Saint-Roch
- Ave. Duration
- 2h 33m
- Frequency
- 4 times a day
- Estimated price
- €45–70
- Website
- Zou! Lignes Express Régionales
Train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eaux
- Ave. Duration
- 1h 53m
- Frequency
- Every 2 hours
- Estimated price
- €40–55
- Website
- Zou! Lignes Express Régionales
Train from Port Vendres Ville to Narbonne
- Ave. Duration
- 1h 17m
- Frequency
- 4 times a day
- Estimated price
- €24–35
- Website
- Zou! Lignes Express Régionales
Train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eaux
- Ave. Duration
- 1h 53m
- Frequency
- Every 2 hours
- Estimated price
- €40–55
- Website
- Zou! Lignes Express Régionales
- Phone
- +33 1 84 94 36 35
- Website
- TGV inOui
Train from Montpellier Saint-Roch to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 1h 11m
- Frequency
- Every 2 hours
- Estimated price
- €40–65
- 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 Narbonne to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 2h 25m
- Frequency
- Every 3 hours
- Estimated price
- €60–95
- 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 Barcelona-Sants
- Ave. Duration
- 1h 24m
- Frequency
- Twice daily
- Estimated price
- €35–55
- Website
- TGV inOui
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Montpellier Saint-Roch to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 1h 14m
- Frequency
- Twice daily
- Estimated price
- €26–40
- Website
- Renfe Viajeros
Train from Perpignan to Barcelona-Sants
- Ave. Duration
- 1h 24m
- Frequency
- Twice daily
- Estimated price
- €22–35
- Website
- Renfe Viajeros
Train from Narbonne to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 2h 14m
- Frequency
- Twice daily
- Estimated price
- €35–55
- Website
- Renfe Viajeros
Train from Perpignan to Marseille St Charles
- Ave. Duration
- 3h 27m
- Frequency
- Twice daily
- Estimated price
- €40–65
- Website
- Renfe Viajeros
Train from Perpignan to Barcelona-Sants
- Ave. Duration
- 1h 24m
- Frequency
- Twice daily
- Estimated price
- €22–35
- Website
- Renfe Viajeros
Train from Perpignan to Barcelona-Sants
- Ave. Duration
- 1h 24m
- Frequency
- Twice daily
- Estimated price
- €22–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 Barcelona-Sants
- Ave. Duration
- 1h 24m
- Frequency
- Twice daily
- Estimated price
- €22–35
- Website
- Renfe Viajeros
- 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
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
- +39 06 8937 1892
- Website
- Italo Treno
Train from Torino Porta di Susa to Milano Centrale
- Ave. Duration
- 50 min
- Frequency
- Hourly
- Estimated price
- €16–27
- Website
- Italo Treno
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Perpignan to Milano, Autostazione Lampugnano
- Ave. Duration
- 11h 40m
- Frequency
- Once daily
- Estimated price
- €70–110
- Website
- Flixbus
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Perpignan to Milano, Autostazione Lampugnano
- Ave. Duration
- 12h 35m
- Frequency
- 3 times a day
- Estimated price
- €65–110
- Website
- BlaBlaCar Bus
Bus from Marseille - Saint-Charles Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 7h 35m
- Frequency
- Every 4 hours
- Estimated price
- €40–65
- Website
- BlaBlaCar Bus
- Phone
- +39 06 88 93 82 32
- Website
- Itabus S.p.A.
Bus from Perpignan to Milano, Autostazione Lampugnano
- Ave. Duration
- 10h 55m
- Frequency
- Once daily
- Estimated price
- €40–75
- Website
- Itabus S.p.A.
- [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
- 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
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 delightfully under-the-radar French towns you need to visit
Read the travel guide
Train travel in France: A guide to SNCF
Read the travel guide
Booking & Getting There
Port-Vendres to Milan bus services, operated by FlixBus, arrive at Milano, Autostazione Lampugnano station.
Port-Vendres to Milan 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 Port-Vendres to Milan is 761 km. It takes approximately 9h 1m to drive from Port-Vendres to Milan.
Book your Port-Vendres to Milan train tickets online with Omio.
There are 13767+ hotels available in Milan.

















































