There are 6 ways to get from Surabaya to Milan by plane, train, or bus
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly Juanda International Airport to Milan Linate Airport
best- Fly from Juanda International Airport (SUB) to Milan Linate Airport (LIN)plane SUB - LIN
20h 4m€508–1,011Fly Juanda International Airport to Milano Malpensa Airport, train
cheapest- Fly from Juanda International Airport (SUB) to Milano Malpensa Airport (MXP)plane SUB - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
18h 43m€311–1,014Fly Juanda International Airport to Verona Villafranca Airport, train
- Fly from Juanda International Airport (SUB) to Verona Villafranca Airport (VRN)plane SUB - VRN
- Take the train from Verona Porta Nuova to Milano Centraletrain
25h 41m€473–1,700Fly Juanda International Airport to Zurich Airport, train
- Fly from Juanda International Airport (SUB) to Zurich Airport (ZRH)plane SUB - ZRH
- Take the train from Zürich HB to Como S. Giovannitrain
- Take the train from Como S. Giovanni to Milano Centraletrain
22h 7m€410–1,251Fly Juanda International Airport to Il Caravaggio International Airport, bus
- Fly from Juanda International Airport (SUB) to Il Caravaggio International Airport (BGY)plane SUB - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
22h 53m€322–781Train to Abdul Rachman Saleh Airport, fly to Milano Malpensa Airport, train
- Take the train from Gubeng to Lawangtrain
- Fly from Abdul Rachman Saleh Airport (MLG) to Milano Malpensa Airport (MXP)plane MLG - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
26h 32m€610–2,028
Juanda International Airport (SUB) to Milan Linate Airport (LIN) flights
Comparing Your Travel Options
The cheapest way to get from Surabaya to Milan is to fly and bus which costs €320 - €800 and takes 22h 53m.
The fastest way to get from Surabaya to Milan is to fly and train which takes 18h 43m and costs €310 - €1100.
The distance between Surabaya and Milan is 11671 km.
It takes approximately 20h 4m to get from Surabaya to Milan, including transfers.
Milan is 6h behind Surabaya. It is currently 10:56 PM in Surabaya and 4:56 PM in Milan.
There are 13771+ hotels available in Milan.
What companies run services between Surabaya, Indonesia and Milan, Italy?
Singapore Airlines, Lufthansa, and seven other airlines fly from Juanda International Airport (SUB) to Milan Linate Airport (LIN) 3 times a day.
- Website
- lufthansa.com
Flights from Juanda International Airport to Milan Linate Airport via Singapore Changi, Munich
- Ave. Duration
- 19h 40m
- When
- Every day
- Estimated price
- €350–2,000
Flights from Juanda International Airport to Milan Linate Airport via Singapore Changi, Rome
- Ave. Duration
- 23h 30m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- €370–2,000
Flights from Juanda International Airport to Milan Linate Airport via Kuala Lumpur, Frankfurt
- Ave. Duration
- 24h 35m
- When
- Monday, Tuesday, and Sunday
- Estimated price
- €360–1,300
Flights from Juanda International Airport to Milano Malpensa Airport via Singapore Changi, Munich
- Ave. Duration
- 20h
- When
- Monday, Tuesday, Wednesday, and Sunday
- Estimated price
- €310–1,700
Flights from Juanda International Airport to Verona Villafranca Airport via Singapore Changi, Munich
- Ave. Duration
- 25h
- When
- Tuesday, Thursday, Friday, and Saturday
- Estimated price
- €440–2,400
Flights from Juanda International Airport to Verona Villafranca Airport via Kuala Lumpur, Frankfurt
- Ave. Duration
- 25h 40m
- When
- Monday, Tuesday, and Sunday
- Estimated price
- €440–1,600
Flights from Juanda International Airport to Zurich Airport via Singapore Changi, Munich
- Ave. Duration
- 19h 35m
- When
- Thursday and Friday
- Estimated price
- €340–1,900
- Website
- ita-airways.com
Flights from Juanda International Airport to Milan Linate Airport via Singapore Changi, Munich
- Ave. Duration
- 19h 30m
- When
- Tuesday, Wednesday, Friday, Saturday, and Sunday
- Estimated price
- €350–1,300
Flights from Juanda International Airport to Milan Linate Airport via Jeddah, Rome
- Ave. Duration
- 21h 15m
- When
- Thursday
- Estimated price
- €500–1,000
Flights from Juanda International Airport to Milan Linate Airport via Singapore Changi, Rome
- Ave. Duration
- 23h 30m
- When
- Tuesday, Thursday, and Saturday
- Estimated price
- €370–2,000
Flights from Juanda International Airport to Verona Villafranca Airport via Singapore Changi, Munich
- Ave. Duration
- 26h 20m
- When
- Tuesday, Thursday, Friday, and Saturday
- Estimated price
- €440–2,400
- Website
- singaporeair.com
Flights from Juanda International Airport to Milano Malpensa Airport via Singapore Changi
- Ave. Duration
- 17h 40m
- When
- Every day
- Estimated price
- €310–1,700
Flights from Juanda International Airport to Zurich Airport via Singapore Changi
- Ave. Duration
- 17h 47m
- When
- Every day
- Estimated price
- €320–1,900
Flights from Juanda International Airport to Zurich Airport via Singapore Changi, Munich
- Ave. Duration
- 19h 15m
- When
- Tuesday, Wednesday, Saturday, and Sunday
- Estimated price
- €330–1,200
- Website
- swiss.com
Flights from Juanda International Airport to Milano Malpensa Airport via Singapore Changi, Zurich Airport
- Ave. Duration
- 20h 30m
- When
- Every day
- Estimated price
- €300–1,000
Flights from Juanda International Airport to Zurich Airport via Singapore Changi
- Ave. Duration
- 18h 50m
- When
- Every day
- Estimated price
- €340–1,900
- Website
- ryanair.com
Flights from Juanda International Airport to Il Caravaggio International Airport via Singapore Changi, Vienna
- Ave. Duration
- 21h 35m
- When
- Friday
- Estimated price
- €310–750
Flights from Juanda International Airport to Il Caravaggio International Airport via Singapore Changi, Athens
- Ave. Duration
- 29h 40m
- When
- Sunday
- Estimated price
- €320–750
- Website
- emirates.com
Flights from Juanda International Airport to Il Caravaggio International Airport via Singapore Changi, Dubai
- Ave. Duration
- 22h 5m
- When
- Tuesday, Friday, Saturday, and Sunday
- Estimated price
- €420–1,300
Flights from Abdul Rachman Saleh Airport to Milano Malpensa Airport via Soekarno–Hatta, Dubai
- Ave. Duration
- 23h 10m
- When
- Every day
- Estimated price
- €650–2,100
- Website
- klm.com
Flights from Juanda International Airport to Milan Linate Airport via Soekarno–Hatta, Amsterdam Schiphol
- Ave. Duration
- 26h 35m
- When
- Friday and Sunday
- Estimated price
- €490–1,500
- Website
- airdolomiti.it
Flights from Juanda International Airport to Verona Villafranca Airport via Singapore Changi, Munich
- Ave. Duration
- 26h 20m
- When
- Tuesday, Thursday, Friday, and Saturday
- Estimated price
- €440–2,400
- Website
- qatarairways.com
Flights from Abdul Rachman Saleh Airport to Milano Malpensa Airport via Soekarno–Hatta, Doha
- Ave. Duration
- 21h 45m
- When
- Every day
- Estimated price
- €650–1,900
- Website
- turkishairlines.com
Flights from Abdul Rachman Saleh Airport to Milano Malpensa Airport via Soekarno–Hatta, Istanbul
- Ave. Duration
- 23h 55m
- When
- Every day
- Estimated price
- €600–2,000
- Website
- egyptair.com
Flights from Abdul Rachman Saleh Airport to Milano Malpensa Airport via Soekarno–Hatta, Cairo
- Ave. Duration
- 27h 25m
- When
- Tuesday and Thursday
- Estimated price
- €850–2,000
- 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 5210550
- Website
- Trenitalia Frecce
Train from Verona Porta Nuova to Milano Centrale
- Ave. Duration
- 1h 14m
- Frequency
- Every 30 minutes
- Estimated price
- €20–35
- Website
- Trenitalia Frecce
- Phone
- +39 06 68475475
- [email protected]
- Website
- Trenitalia Eurocity
Train from Verona Porta Nuova to Milano Centrale
- Ave. Duration
- 1h 24m
- Frequency
- 4 times a day
- Estimated price
- €35–85
- Website
- Trenitalia Eurocity
- 1st Class
- €55–85
- 2nd Class
- €35–50
Train from Zürich HB to Como S. Giovanni
- Ave. Duration
- 2h 35m
- Frequency
- Hourly
- Estimated price
- €65–110
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Como S. Giovanni to Milano Centrale
- Ave. Duration
- 41 min
- Frequency
- Hourly
- Estimated price
- €15–24
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- 021-121
- [email protected]
- Website
- kai.id
Train from Gubeng to Lawang
- Ave. Duration
- 1h 23m
- Frequency
- Once daily
- Estimated price
- €2–16
- Schedules at
- kai.id
- Book at
- en.tiket.com
- Economy
- €2–16
- Business
- €15–27
- Executive
- €4–35
- [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
Getting to Milan from the airport
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide

































