There are 10 ways to get from Barcelona to Milan by plane, train, bus, car ferry 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.

Recommended option

Fly to Milan Linate  •  4 h 15 min

  1. Fly from Barcelona (BCN) to Milan Linate (LIN) BCN - LIN

$53 - $280

Cheapest option

Fly to Milan Bergamo  •  5 h 19 min

  1. Fly from Barcelona (BCN) to Milan Bergamo (BGY) BCN - BGY

$31 - $249

8 alternative options

Fly to Milan Malpensa  •  4 h 54 min

  1. Fly from Barcelona (BCN) to Milan Malpensa (MXP) BCN - MXP

$44 - $203

Fly to Turin, train  •  5 h 46 min

  1. Fly from Barcelona (BCN) to Turin (TRN) BCN - TRN
  2. Take the train from Torino Porta Susa to Milano Centrale

$51 - $246

Fly to Bologna, train  •  5 h 58 min

  1. Fly from Barcelona (BCN) to Bologna (BLQ) BCN - BLQ
  2. Take the train from Bologna Centrale Station to Milano Rogoredo Station

$61 - $279

Train  •  11 h 14 min

  1. Take the train from Barcelona Sants to Lyon Part Dieu Ave
  2. Take the train from Lyon Part Dieu to Milano Porta Garibaldi Tgv

$171 - $219

Bus FlixBus  •  13 h 48 min

  1. Take the bus from Barcelona to Milan, Milan N740 / ...

$59 - $98

Bus ALSA  •  17 h 48 min

  1. Take the bus from Barcelona/Sants to Milano

$65 - $97

Car ferry, train  •  21 h 42 min

  1. Take the car ferry from Barcelona to Genoa
  2. Take the train from Genova Piazza Principe to Milano Centrale Ec / ...

$91 - $159

Drive  •  9 h 25 min

  1. Drive from Barcelona to Milan 617.2 miles

$140 - $220

Questions & Answers

The cheapest way to get from Barcelona to Milan is to fly which costs 26€ - 220€ and takes 5 h 19 min.

More details

The quickest way to get from Barcelona to Milan is to fly which takes 4 h 15 min and costs 45€ - 250€.

More details

The distance between Barcelona and Milan is 725 km. The road distance is 987 km.

Get driving directions

It takes approximately 4 h 15 min to get from Barcelona to Milan, including transfers.

More details

No, there is no direct bus from Barcelona to Milan. However, there are services departing from Barcelona and arriving at conciliazione m1 via lampugnano m1. The journey, including transfers, takes approximately 13 h 48 min.

More details

No, there is no direct train from Barcelona to Milan. However, there are services departing from Barcelona Sants and arriving at Milano Porta Garibaldi via Lyon Part Dieu. The journey, including transfers, takes approximately 11 h 14 min.

More details

What companies run services between Barcelona, Spain and Milan, Italy?

Alitalia and Air Europa fly from Barcelona to Milan 3 times a day. Alternatively, you can take a train from Barcelona to Milan via Lyon Part Dieu in around 11 h 14 min.

Airlines
Vueling Airlines
Website
vueling.com
Flights from Barcelona to Milan Malpensa
Ave. Duration
1 h 35 min
When
Every day
Estimated price
$35 - $340
Flights from Barcelona to Turin
Ave. Duration
1 h 30 min
When
Every day
Estimated price
$35 - $350
Flights from Barcelona to Bologna
Ave. Duration
1 h 40 min
When
Every day
Estimated price
$50 - $360
Ryanair
Website
ryanair.com
Flights from Barcelona to Milan Bergamo
Ave. Duration
1 h 45 min
When
Every day
Estimated price
$28 - $270
Flights from Barcelona to Milan Bergamo via Ibiza
Ave. Duration
4 h 30 min
When
Monday, Tuesday, Friday, Saturday and Sunday
Estimated price
$28 - $270
Flights from Barcelona to Turin
Ave. Duration
1 h 45 min
When
Every day
Estimated price
$29 - $290
Flights from Barcelona to Bologna
Ave. Duration
1 h 45 min
When
Every day
Estimated price
$35 - $300
Alitalia
Website
alitalia.com
Flights from Barcelona to Milan Linate
Ave. Duration
1 h 30 min
When
Every day
Estimated price
$55 - $550
Flights from Barcelona to Milan Linate via Rome
Ave. Duration
3 h 52 min
When
Every day
Estimated price
$55 - $550
Flights from Barcelona to Milan Linate via Palma Mallorca
Ave. Duration
3 h 50 min
When
Saturday and Sunday
Estimated price
$55 - $550
Flights from Barcelona to Milan Malpensa via Rome
Ave. Duration
4 h
When
Every day
Estimated price
$480 - $3,400
Flights from Barcelona to Bologna via Rome
Ave. Duration
4 h 15 min
When
Every day
Estimated price
$100 - $600
easyJet
Website
easyjet.com
Flights from Barcelona to Milan Malpensa
Ave. Duration
1 h 40 min
When
Every day
Estimated price
$40 - $280
Lufthansa
Website
lufthansa.com
Flights from Barcelona to Milan Malpensa via Munich
Ave. Duration
4 h 10 min
When
Every day
Estimated price
$170 - $700
Flights from Barcelona to Milan Bergamo via Munich
Ave. Duration
4 h
When
Monday, Tuesday, Wednesday and Thursday
Estimated price
$190 - $700
Flights from Barcelona to Bologna via Munich
Ave. Duration
4 h 5 min
When
Every day
Estimated price
$180 - $700
Swiss
Website
swiss.com
Flights from Barcelona to Milan Malpensa via Zurich
Ave. Duration
3 h 55 min
When
Every day
Estimated price
$190 - $750
Singapore Airlines
Website
singaporeair.com
Flights from Barcelona to Milan Malpensa
Ave. Duration
1 h 40 min
When
Wednesday, Thursday and Sunday
Estimated price
$140 - $550
Train operators
Trenitalia Frecce
Phone
+39 06 68475475
Website
trenitalia.com
Train from Torino Porta Susa to Milano Centrale
Ave. Duration
50 min
Frequency
Hourly
Estimated price
$21 - $30
Website
orario.trenitalia.com
Train from Bologna C.Le to Milano Rogoredo
Ave. Duration
59 min
Frequency
Every 4 hours
Estimated price
$28 - $40
Website
orario.trenitalia.com
ItaloTreno
Phone
+39 060708
Website
italotreno.it
Train from Torino Porta Susa Station to Milano Centrale Station
Ave. Duration
1 h 5 min
Frequency
Hourly
Estimated price
$20 - $29
Website
italotreno.it
Train from Bologna Centrale Station to Milano Rogoredo Station
Ave. Duration
1 h 2 min
Frequency
Every 30 minutes
Estimated price
$24 - $35
Website
italotreno.it
TGV
Phone
0033 892 353535
Website
tgv.com
Train from Lyon Part Dieu to Milano Porta Garibaldi
Ave. Duration
5 h 19 min
Frequency
Once daily
Estimated price
$85 - $100
Website
en.oui.sncf
2nd Class
$85 - $100
1st Class
$120 - $170
Trenitalia
Phone
+39 06 68475475
Website
trenitalia.com
Train from Genova Piazza Principe to Milano Centrale
Ave. Duration
1 h 27 min
Frequency
5 times a day
Estimated price
$10 - $23
Website
orario.trenitalia.com
1st Class
$19 - $23
Bus operators
Ferry operators

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.