There are 9 ways to get from Bilbao to Milan by plane, train, train (TGV, 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.
Fly Bilbao Airport to Milano Malpensa Airport, train
best- Fly from Bilbao Airport (BIO) to Milano Malpensa Airport (MXP)plane BIO - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
4h 55m€22–108Train
- Take the train from Zazpikaleak/Casco Viejo-Bilbao to Amara-Donostiatrain E1
- Take the train from Hendaye to Massy Tgvtrain Tgv
- Take the train from Massy Tgv to St Jean De Maurienne Arvantrain Tgv
- Take the train from St Jean De Maurienne Arvan to Milano Centraletrain Fr
17h 53m€297–468Bus, train
- Take the bus from Bilbao to Chambérybus FlixBus N1156
- Take the train from Chambery Challes Les Eaux to Milano Centraletrain Fr
19h 16m€131–191Drive 1,237.8 km
- Drive from Bilbao to Milancar 1,237.8 km
13h 27m€202–292Fly Bilbao Airport to Milan Linate Airport
- Fly from Bilbao Airport (BIO) to Milan Linate Airport (LIN)plane BIO - LIN
6h 6m€113–255Bus to Santander Airport, fly to Milano Malpensa Airport, train
- Take the bus from Bilbao Intermodal to Parada de autobús del aeropuerto de Santanderbus
- Fly from Santander Airport (SDR) to Milano Malpensa Airport (MXP)plane SDR - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
6h 3m€82–314Fly Bilbao Airport to Turin Caselle Airport, train
- Fly from Bilbao Airport (BIO) to Turin Caselle Airport (TRN)plane BIO - TRN
- Take the train from Torino Porta di Susa to Milano Centraletrain
6h 1m€42–262Bus to Vitoria-Gasteiz Airport, fly to Il Caravaggio International Airport, bus
- Take the bus from Bilbao Bolueta to Aireportua/Aeropuerto Vitoria-Gasteizbus
- Fly from Vitoria-Gasteiz Airport (VIT) to Il Caravaggio International Airport (BGY)plane VIT - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
5h 41m€49–268Bus
- Take the bus from Bilbao Intermodal to Estación de Autobuses Donostia-San Sebastiánbus
- Take the bus from San Sebastián - Bus Station to Bordeaux - Belcier Bus Stopbus
- Take the bus from Bordeaux - Belcier Bus Stop to Milano, Autostazione Lampugnanobus
19h 23m€97–172
Bilbao to Milan by train
Comparing Your Travel Options
The cheapest way to get from Bilbao to Milan is to fly and train which costs €21 - €110 and takes 4h 55m.
The fastest way to get from Bilbao to Milan is to fly and train which takes 4h 55m and costs €21 - €110.
No, there is no direct bus from Bilbao to Milan. However, there are services departing from Bilbao Intermodal and arriving at Milano, Autostazione Lampugnano via San Sebastián - Bus Station and Bordeaux - Belcier Bus Stop. The journey, including transfers, takes approximately 19h 23m.
No, there is no direct train from Bilbao to Milan. However, there are services departing from Zazpikaleak/Casco Viejo-Bilbao and arriving at Milano Centrale via Amara-Donostia, Hendaye, Massy Tgv and St Jean De Maurienne Arvan. The journey, including transfers, takes approximately 17h 53m.
The distance between Bilbao and Milan is 1009 km. The road distance is 1237.8 km.
The best way to get from Bilbao to Milan without a car is to train which takes 17h 53m and costs €290 - €470.
It takes approximately 4h 55m to get from Bilbao to Milan, including transfers.
Bilbao to Milan bus services, operated by Avanza Gipuzkoa, depart from Bilbao Intermodal station.
Bilbao to Milan train services, operated by Euskotren, depart from Zazpikaleak/Casco Viejo-Bilbao station.
The best way to get from Bilbao to Milan is to train which takes 17h 53m and costs €290 - €470. Alternatively, you can fly, which costs €110 - €260 and takes 6h 6m, you could also bus, which costs €95 - €180 and takes 19h 23m.
What companies run services between Bilbao, Spain and Milan, Italy?
You can take a train from Zazpikaleak/Casco Viejo-Bilbao to Milano Centrale via Amara-Donostia, Hendaia, Hendaye, Massy Tgv, and St Jean De Maurienne Arvan in around 17h 53m. Alternatively, Air France, Vueling Airlines, and three other airlines fly from Bilbao Airport (BIO) to Milan Linate Airport (LIN) twice daily.
- Website
- vueling.com
Flights from Bilbao Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 53m
- When
- Every day
- Estimated price
- €19–110
Flights from Bilbao Airport to Milano Malpensa Airport via Barcelona
- Ave. Duration
- 4h 1m
- When
- Thursday, Saturday, Monday, Tuesday, Friday, and Sunday
- Estimated price
- €19–110
Flights from Santander Airport to Milano Malpensa Airport via Madrid
- Ave. Duration
- 4h 20m
- When
- Every day
- Estimated price
- €70–340
Flights from Bilbao Airport to Turin Caselle Airport
- Ave. Duration
- 1h 45m
- When
- Thursday and Sunday
- Estimated price
- €65–240
Flights from Bilbao Airport to Turin Caselle Airport via Barcelona
- Ave. Duration
- 3h 56m
- When
- Wednesday, Friday, Monday, and Thursday
- Estimated price
- €65–240
- Website
- iberia.com
Flights from Bilbao Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 55m
- When
- Monday, Friday, Wednesday, Tuesday, Thursday, and Sunday
- Estimated price
- €19–110
Flights from Bilbao Airport to Milano Malpensa Airport via Barcelona
- Ave. Duration
- 4h 2m
- When
- Thursday, Saturday, Monday, Tuesday, Friday, and Sunday
- Estimated price
- €19–110
Flights from Santander Airport to Milano Malpensa Airport via Madrid
- Ave. Duration
- 4h 20m
- When
- Every day
- Estimated price
- €70–340
Flights from Bilbao Airport to Turin Caselle Airport
- Ave. Duration
- 1h 45m
- When
- Thursday and Sunday
- Estimated price
- €65–240
Flights from Bilbao Airport to Turin Caselle Airport via Barcelona
- Ave. Duration
- 3h 56m
- When
- Wednesday, Friday, Monday, and Thursday
- Estimated price
- €65–240
- Website
- easyjet.com
Flights from Bilbao Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 48m
- When
- Every day
- Estimated price
- €21–95
Flights from Bilbao Airport to Milan Linate Airport via Barcelona
- Ave. Duration
- 3h 57m
- When
- Monday and Sunday
- Estimated price
- €50–240
Flights from Bilbao Airport to Milan Linate Airport via Paris Orly
- Ave. Duration
- 5h 10m
- When
- Monday
- Estimated price
- €45–220
- Website
- airfrance.com
Flights from Bilbao Airport to Milan Linate Airport via Paris Charles de Gaulle
- Ave. Duration
- 4h 58m
- When
- Every day
- Estimated price
- €60–330
Flights from Bilbao Airport to Turin Caselle Airport via Paris Charles de Gaulle
- Ave. Duration
- 4h 25m
- When
- Tuesday, Wednesday, Saturday, and Sunday
- Estimated price
- €60–330
- Website
- flyulendo.com
Flights from Bilbao Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 55m
- When
- Tuesday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- €10–90
Flights from Santander Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 55m
- When
- Monday, Tuesday, Friday, and Saturday
- Estimated price
- €40–170
Flights from Bilbao Airport to Turin Caselle Airport
- Ave. Duration
- 1h 45m
- When
- Monday, Wednesday, and Friday
- Estimated price
- €16–120
- Website
- aeroitalia.com
Flights from Bilbao Airport to Milan Linate Airport via Olbia
- Ave. Duration
- 5h
- When
- Friday
- Estimated price
- €55–250
- Website
- ryanair.com
Flights from Vitoria-Gasteiz Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 55m
- When
- Monday, Friday, and Saturday
- Estimated price
- €35–200
- 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
- +34 944 333 333
- [email protected]
- Website
- Euskotren
Train from Zazpikaleak/Casco Viejo-Bilbao to Amara-Donostia
- Ave. Duration
- 2h 40m
- Frequency
- Hourly
- Estimated price
- €5–10
- Website
- Euskotren
- Phone
- +33 1 84 94 36 35
- Website
- TGV inOui
Train from Hendaye to Massy Tgv
- Ave. Duration
- 4h 33m
- Frequency
- 3 times a day
- Estimated price
- €150–230
- Website
- TGV inOui
Train from Massy Tgv to St Jean De Maurienne Arvan
- Ave. Duration
- 4h 18m
- Frequency
- 4 times a week
- Estimated price
- €110–180
- Website
- TGV inOui
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from St Jean De Maurienne Arvan to Milano Centrale
- Ave. Duration
- 2h 34m
- Frequency
- 4 times a day
- Estimated price
- €30–45
- Website
- Trenitalia
Train from Chambery Challes Les Eaux to Milano Centrale
- Ave. Duration
- 3h 21m
- Frequency
- 4 times a day
- Estimated price
- €40–55
- Website
- Trenitalia
- Phone
- +39 06 8937 1892
- Website
- Italo Treno
Train from Torino Porta di Susa to Milano Centrale
- Ave. Duration
- 47 min
- Frequency
- Hourly
- Estimated price
- €17–27
- Website
- Italo Treno
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Bilbao to Chambéry
- Ave. Duration
- 14h 55m
- Frequency
- 3 times a week
- Estimated price
- €90–140
- Website
- Flixbus
- Phone
- +34 910 207 007
- Website
- ALSA
Bus from Bilbao Intermodal to Parada de autobús del aeropuerto de Santander
- Ave. Duration
- 1h 5m
- Frequency
- Once daily
- Estimated price
- €39
- Website
- ALSA
- Aeropuerto de Santander
- €39
Bus from San Sebastián - Bus Station to Bordeaux - Belcier Bus Stop
- Ave. Duration
- 3h 30m
- Frequency
- 3 times a day
- Estimated price
- €20–35
- Schedules at
- alsa.es
- Phone
- +34 94 476 50 07
- Website
- Autobuses La Union
Bus from Bilbao Bolueta to Aireportua/Aeropuerto Vitoria-Gasteiz
- Ave. Duration
- 48 min
- Frequency
- 5 times a day
- Estimated price
- €9–15
- Website
- Autobuses La Union
- [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
- Phone
- +34 900 121 400
- [email protected]
Bus from Bilbao Intermodal to Estación de Autobuses Donostia-San Sebastián
- Ave. Duration
- 1h 20m
- Frequency
- Hourly
- Estimated price
- €12–17
- Schedules at
- gipuzkoa.avanzagrupo.com
- Book at
- online.pesa.net
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from San Sebastián - Bus Station to Bordeaux - Belcier Bus Stop
- Ave. Duration
- 2h 25m
- Frequency
- Hourly
- Estimated price
- €17–28
- Website
- BlaBlaCar Bus
Bus from Bordeaux - Belcier Bus Stop to Milano, Autostazione Lampugnano
- Ave. Duration
- 14h
- Frequency
- 4 times a day
- Estimated price
- €70–120
- Website
- BlaBlaCar Bus
- Phone
- +351 21 75 24 524
- Website
- Rede Expressos
Bus from San Sebastián - Bus Station to Bordeaux - Belcier Bus Stop
- Ave. Duration
- 3h 15m
- Frequency
- Once a week
- Estimated price
- €15–29
- Website
- Rede Expressos
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
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
Booking & Getting There
Bilbao to Milan bus services, operated by Avanza Gipuzkoa, arrive at Estación de Autobuses Donostia-San Sebastián station.
Bilbao to Milan train services, operated by Euskotren, arrive at Amara-Donostia station.
Yes, the driving distance between Bilbao to Milan is 1238 km. It takes approximately 13h 27m to drive from Bilbao to Milan.
Book your Bilbao to Milan bus tickets online with Omio.
There are 13847+ hotels available in Milan.

















































