There are 10 ways to get from Milan to Portbou by train (Trenitalia, Renfe, TGV), bus, train, car, plane, or train (Trenitalia, TGV, Renfe)
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 Milano Centrale to Lyon Part Dieutrain Fr
- Take the train from Lyon Part Dieu to Perpignantrain
- Take the train from Perpignan to Port-Boutrain Ter
10h 47m€94–234Bus, train
cheapest- Take the bus from Milano, Autostazione Lampugnano to Perpignanbus FlixBus N740
- Take the train from Perpignan to Cerberetrain Ter
12h 41m€27–87Drive 780.5 km
- Drive from Milan to Portboucar 780.5 km
9h 20m€121–174Train to Milano Malpensa Airport, fly to Barcelona–El Prat Airport, train
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Barcelona–El Prat Airport (BCN)plane MXP - BCN
- Take the train from Barcelona-Sants to Gironatrain
- Take the train from Girona to Portboutrain
7h 32m€39–173Train via Montpellier
- Take the train from Milano Centrale to Chambery Challes Les Eauxtrain Fr
- Take the train from Chambery Challes Les Eaux to Valence Tgv Rhone-Alpes Sudtrain Ter
- Take the train from Valence Tgv Rhone-Alpes Sud to Montpellier Saint-Rochtrain Tgv
- Take the train from Montpellier Saint-Roch to Port-Boutrain Ter
12h 19m€134–326Bus, train via Duomo M1
- Take the bus from Milan to Perpignanbus FlixBus N740
- Take the train from Perpignan to Port-Boutrain Ter
14h 10m€44–88Fly Milan Linate Airport to Barcelona–El Prat Airport, train
- Fly from Milan Linate Airport (LIN) to Barcelona–El Prat Airport (BCN)plane LIN - BCN
- Take the train from Barcelona-Sants to Gironatrain
- Take the train from Girona to Portboutrain
7h 1m€45–230Bus to Il Caravaggio International Airport, fly to Barcelona–El Prat Airport, train
- Take the bus from Milano, Autostazione Lampugnano to Bergamobus
- Fly from Il Caravaggio International Airport (BGY) to Barcelona–El Prat Airport (BCN)plane BGY - BCN
- Take the train from Barcelona-Sants to Gironatrain
- Take the train from Girona to Portboutrain
7h 49m€57–234Train to Turin Caselle Airport, fly to Barcelona–El Prat Airport, train
- Take the train from Milano Centrale to Torino Porta Susatrain
- Fly from Turin Caselle Airport (TRN) to Barcelona–El Prat Airport (BCN)plane TRN - BCN
- Take the train from Barcelona-Sants to Gironatrain
- Take the train from Girona to Portboutrain
8h 14m€68–258Train to Milano Malpensa Airport, fly to Marseille Provence Airport, train
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Marseille Provence Airport (MRS)plane MXP - MRS
- Take the train from Aix En Provence Tgv to Perpignantrain
- Take the train from Perpignan to Port-Boutrain
10h 6m€96–245
Milan to Portbou by train
Questions & Answers
The cheapest way to get from Milan to Portbou is to bus and train which costs €27 - €90 and takes 12h 41m.
The fastest way to get from Milan to Portbou is to fly and train which takes 7h 1m and costs €45 - €230.
No, there is no direct train from Milan to Portbou. However, there are services departing from Milano Centrale and arriving at Port-Bou via Lyon Part Dieu and Perpignan. The journey, including transfers, takes approximately 10h 47m.
The distance between Milan and Portbou is 963 km. The road distance is 780.5 km.
The best way to get from Milan to Portbou without a car is to train which takes 10h 47m and costs €90 - €240.
It takes approximately 10h 47m to get from Milan to Portbou, including transfers.
Milan to Portbou train services, operated by Trenitalia, depart from Milano Centrale station.
Milan to Portbou train services, operated by Trenitalia, arrive at Lyon Part Dieu station.
Yes, the driving distance between Milan to Portbou is 780 km. It takes approximately 9h 20m to drive from Milan to Portbou.
Book your Milan to Portbou train tickets online with Omio.
What companies run services between Milan, Italy and Portbou, Spain?
You can take a train from Milano Centrale to Port-Bou via Lyon Part Dieu and Perpignan in around 10h 47m.
- Website
- ryanair.com
Flights from Milano Malpensa Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 45m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €23–140
Flights from Il Caravaggio International Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- €30–130
Flights from Turin Caselle Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 40m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €40–150
- Website
- easyjet.com
Flights from Milano Malpensa Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- €21–90
Flights from Milan Linate Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 35m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €25–120
- Website
- vueling.com
Flights from Milano Malpensa Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 38m
- When
- Every day
- Estimated price
- €19–100
Flights from Turin Caselle Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- €30–130
- Website
- twinjet.fr
Flights from Milano Malpensa Airport to Marseille Provence Airport
- Ave. Duration
- 1h 15m
- When
- Monday to Friday
- Estimated price
- €360–800
- Website
- flyulendo.com
Flights from Milano Malpensa Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 40m
- When
- Monday, Friday, Saturday, and Sunday
- Estimated price
- €19–85
- Website
- singaporeair.com
Flights from Milano Malpensa Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 40m
- When
- Wednesday, Thursday, and Sunday
- Estimated price
- €55–130
- Website
- swiss.com
Flights from Milano Malpensa Airport to Marseille Provence Airport via Zurich
- Ave. Duration
- 3h 30m
- When
- Monday and Saturday
- Estimated price
- €65–270
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Milano Centrale to Lyon Part Dieu
- Ave. Duration
- 4h 39m
- Frequency
- Twice daily
- Estimated price
- €50–110
- Website
- https://www.trenitalia.com/en.html
Train from Milano Centrale to Chambery Challes Les Eaux
- Ave. Duration
- 3h 22m
- Frequency
- Twice daily
- Estimated price
- €50–140
- Website
- https://www.trenitalia.com/en.html
Train from Milano Centrale to Torino Porta Susa
- Ave. Duration
- 45 min
- Frequency
- Hourly
- Estimated price
- €13
- Website
- https://www.trenitalia.com/en.html
Rome2Rio's guide to Renfe Viajeros
Contact Details
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Lyon Part Dieu to Perpignan
- Ave. Duration
- 3h 18m
- Frequency
- Twice daily
- Estimated price
- €35–55
- Website
- https://www.renfe.com/es/en
Train from Barcelona-Sants to Girona
- Ave. Duration
- 41 min
- Frequency
- Hourly
- Estimated price
- €8–55
- Website
- https://www.renfe.com/es/en
Train from Girona to Portbou
- Ave. Duration
- 1h 3m
- Frequency
- Every 2 hours
- Estimated price
- €7
- Website
- https://www.renfe.com/es/en
Train from Valence Tgv Rhone-Alpes Sud to Montpellier Saint-Roch
- Ave. Duration
- 1h 13m
- Frequency
- Twice daily
- Estimated price
- €18–25
- Website
- https://www.renfe.com/es/en
Train from Aix En Provence Tgv to Perpignan
- Ave. Duration
- 2h 50m
- Frequency
- Twice daily
- Estimated price
- €27–40
- Website
- https://www.renfe.com/es/en
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Lyon Part Dieu to Perpignan
- Ave. Duration
- 3h 42m
- Frequency
- Twice a week
- Estimated price
- €50–110
- Website
- https://www.sncf-connect.com/en-en
Train from Valence Tgv Rhone-Alpes Sud to Montpellier Saint-Roch
- Ave. Duration
- 1h 13m
- Frequency
- Every 3 hours
- Estimated price
- €26–55
- Website
- https://www.sncf-connect.com/en-en
- Phone
- +33 1 84 94 36 35
- Website
- track.effiliation.com
Train from Perpignan to Port-Bou
- Ave. Duration
- 50 min
- Frequency
- Every 4 hours
- Estimated price
- €7–16
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
- 2nd Class
- €7–11
- Rail 1st Class
- €11–16
Train from Perpignan to Cerbere
- Ave. Duration
- 36 min
- Frequency
- Every 3 hours
- Estimated price
- €7–15
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
- 2nd Class
- €7–10
- Rail 1st Class
- €10–15
Train from Chambery Challes Les Eaux to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 1h 54m
- Frequency
- Hourly
- Estimated price
- €30–60
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
Train from Valence Tgv Rhone-Alpes Sud to Montpellier Saint-Roch
- Ave. Duration
- 1h 11m
- Frequency
- Twice a week
- Estimated price
- €35–80
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
- 2nd Class
- €35–55
- Rail 1st Class
- €55–80
Train from Montpellier Saint-Roch to Port-Bou
- Ave. Duration
- 2h 54m
- Frequency
- 5 times a day
- Estimated price
- €35–50
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
Rome2Rio's guide to Renfe AVE
Contact Details
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Barcelona-Sants to Girona
- Ave. Duration
- 40 min
- Frequency
- Every 4 hours
- Estimated price
- €9–50
- Website
- https://www.renfe.com/es/en
- Phone
- +34 900 41 00 41
- Website
- rodalies.gencat.cat
Train from Girona to Portbou
- Ave. Duration
- 1h 3m
- Frequency
- Hourly
- Estimated price
- €5–7
- Website
- https://rodalies.gencat.cat/en/inici/index.html
- Phone
- +34 912 32 03 20
- accesibilidad@renfe.es
- Website
- renfe.com
Train from Girona to Portbou
- Ave. Duration
- 1h 4m
- Frequency
- 3 times a day
- Estimated price
- €3–5
- Website
- https://www.renfe.com/es/en/suburban
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Milano Centrale to Torino Porta Susa
- Ave. Duration
- 59 min
- Frequency
- Every 2 hours
- Estimated price
- €16–40
- Website
- https://www.italotreno.it/en
- Website
- global.flixbus.com
Bus from Milano, Autostazione Lampugnano to Perpignan
- Ave. Duration
- 11h 5m
- Frequency
- Once daily
- Schedules at
- global.flixbus.com
Bus from Milano, Autostazione Lampugnano to Bergamo
- Ave. Duration
- 50 min
- Frequency
- Hourly
- Schedules at
- global.flixbus.com
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Milano, Autostazione Lampugnano to Perpignan
- Ave. Duration
- 12h 30m
- Frequency
- Twice daily
- Estimated price
- €35–75
- Website
- https://www.blablacar.co.uk/bus
Bus from Milano, Autostazione Lampugnano to Bergamo
- Ave. Duration
- 50 min
- Frequency
- Twice daily
- Estimated price
- €6–16
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Milano, Autostazione Lampugnano to Perpignan
- Ave. Duration
- 11h
- Frequency
- 5 times a week
- Estimated price
- €20–30
- Website
- https://www.itabus.it/en/home
Bus from Milano, Autostazione Lampugnano to Bergamo
- Ave. Duration
- 50 min
- Frequency
- 3 times a day
- Estimated price
- €5–8
- Website
- https://www.itabus.it/en/home
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Milan to Perpignan
- Ave. Duration
- 11h 5m
- Frequency
- 3 times a day
- Estimated price
- €35–70
- Website
- https://www.flixbus.co.uk
Bus from Milano, Autostazione Lampugnano to Bergamo
- Ave. Duration
- 50 min
- Frequency
- Hourly
- Estimated price
- €9–15
- Website
- https://www.flixbus.co.uk
Want to know more about travelling around Spain
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
Train travel in Spain: A guide to Renfe
Read the travel guide
What are the different types of Renfe trains in Spain?
Read the travel guide
More Questions & Answers
There are 5715+ hotels available in Portbou.

















































