There are 8 ways to get from Essen to Milan by plane, train, bus, car, or night train
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly Düsseldorf International Airport to Milan Linate Airport
best- Fly from Düsseldorf International Airport (DUS) to Milan Linate Airport (LIN)DUS - LIN
4h 13m€81–277Fly Düsseldorf International Airport to Milano Malpensa Airport, train
cheapest- Fly from Düsseldorf International Airport (DUS) to Milano Malpensa Airport (MXP)DUS - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
4h 56m€44–249Train
- Take the train from Essen Hbf to Basel SBB43
- Take the train from Basel SBB to LuganoEc
- Take the train from Como S.Giovanni to Milano Porta GaribaldiS11
10h 54m€122–351Bus
- Take the bus from Dortmund central bus station to Milano, Autostazione LampugnanoN07
15h 30m€51–138Drive 884.2 km
- Drive from Essen to Milan884.2 km
8h 6m€136–197Train to Frankfurt, fly to Milan Linate Airport
- Take the train from Essen Hbf to Frankfurt
- Fly from Frankfurt (FRA) to Milan Linate Airport (LIN)FRA - LIN
5h 8m€71–209Train to Cologne Bonn Airport, fly to Il Caravaggio International Airport
- Take the train from Essen Hbf to Köln Hbf
- Fly from Cologne Bonn Airport (CGN) to Il Caravaggio International Airport (BGY)CGN - BGY
5h 25m€74–293Train, night train, bus
- Take the train from Essen Hbf to Koeln HbfRe
- Take the night train from Koeln Hbf to Basel SbbNj
- Take the bus from Basel, Meret Oppenheim-Strasse (Bahnhof SBB) to Milano, Autostazione Lampugnano
14h 56m€81–388
Essen to Milan by train
Questions & Answers
The cheapest way to get from Essen to Milan is to bus which costs €50 - €140 and takes 15h 30m.
The fastest way to get from Essen to Milan is to fly which takes 4h 13m and costs €80 - €280.
No, there is no direct bus from Essen station to Milan. However, there are services departing from Essen central train station and arriving at Milano, Autostazione Lampugnano via Dortmund central bus station. The journey, including transfers, takes approximately 15h 30m.
No, there is no direct train from Essen to Milan. However, there are services departing from Essen Hbf and arriving at Milano Porta Garibaldi via Basel SBB, Lugano and Como S.Giovanni. The journey, including transfers, takes approximately 10h 54m.
The distance between Essen and Milan is 717 km. The road distance is 884.2 km.
The best way to get from Essen to Milan without a car is to train which takes 10h 54m and costs €120 - €360.
It takes approximately 4h 13m to get from Essen to Milan, including transfers.
Essen to Milan bus services, operated by FlixBus, depart from Dortmund central bus station.
Essen to Milan train services, operated by Deutsche Bahn Intercity (DB IC), depart from Essen Hbf station.
The best way to get from Essen to Milan is to fly which takes 4h 13m and costs €80 - €280. Alternatively, you can train, which costs €120 - €360 and takes 10h 54m, you could also bus, which costs €50 - €140 and takes 15h 30m.
What companies run services between Essen, Germany and Milan, Italy?
ITA Airways, Lufthansa, and two other airlines fly from Düsseldorf International Airport (DUS) to Milan Linate Airport (LIN) every 4 hours. Alternatively, you can take a train from Essen Hbf to Milano Porta Garibaldi via Basel SBB, Lugano, and Como S.Giovanni in around 10h 54m.
- Website
- lufthansa.com
Flights from Düsseldorf International Airport to Milan Linate Airport via Munich
- Ave. Duration
- 3h 10m
- When
- Monday to Friday
- Estimated price
- €100–280
Flights from Düsseldorf International Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 3h 47m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €100–280
Flights from Düsseldorf International Airport to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 3h 13m
- When
- Every day
- Estimated price
- €95–320
Flights from Düsseldorf International Airport to Milano Malpensa Airport via Munich
- Ave. Duration
- 3h 15m
- When
- Monday, Tuesday, Thursday, Friday, and Saturday
- Estimated price
- €45–290
Flights from Frankfurt to Milan Linate Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €75–150
Flights from Frankfurt to Milan Linate Airport via Munich
- Ave. Duration
- 3h 20m
- When
- Monday, Tuesday, Thursday, Friday, and Sunday
- Estimated price
- €65–120
- Website
- ita-airways.com
Flights from Düsseldorf International Airport to Milan Linate Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €65–190
Flights from Düsseldorf International Airport to Milan Linate Airport via Munich
- Ave. Duration
- 3h 10m
- When
- Monday to Friday
- Estimated price
- €100–280
Flights from Düsseldorf International Airport to Milano Malpensa Airport via Munich
- Ave. Duration
- 3h 20m
- When
- Monday, Tuesday, Thursday, and Friday
- Estimated price
- €70–290
Flights from Düsseldorf International Airport to Milano Malpensa Airport via Zurich
- Ave. Duration
- 3h 25m
- When
- Every day
- Estimated price
- €65–270
Flights from Düsseldorf International Airport to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 3h 25m
- When
- Tuesday, Thursday, Saturday, and Sunday
- Estimated price
- €95–320
Flights from Frankfurt to Milan Linate Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €75–150
- Website
- ryanair.com
Flights from Cologne Bonn Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €50–170
Flights from Cologne Bonn Airport to Il Caravaggio International Airport via Vienna
- Ave. Duration
- 4h
- When
- Sunday
- Estimated price
- €50–170
- Website
- airdolomiti.it
Flights from Frankfurt to Milan Linate Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €75–150
- Website
- easyjet.com
Flights from Düsseldorf International Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- €28–150
Flights from Frankfurt to Milan Linate Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €35–120
- Website
- klm.com
Flights from Düsseldorf International Airport to Milan Linate Airport via Amsterdam Schiphol
- Ave. Duration
- 3h 50m
- When
- Every day
- Estimated price
- €60–320
- Website
- eurowings.com
Flights from Düsseldorf International Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Tuesday, Thursday, Friday, and Sunday
- Estimated price
- €40–150
- Website
- swiss.com
Flights from Düsseldorf International Airport to Milano Malpensa Airport via Zurich
- Ave. Duration
- 3h 12m
- When
- Every day
- Estimated price
- €40–270
- Website
- airfrance.com
Flights from Düsseldorf International Airport to Milan Linate Airport via Paris Charles de Gaulle
- Ave. Duration
- 4h
- When
- Monday, Wednesday, Thursday, and Friday
- Estimated price
- €60–330
- Phone
- +49 30 311 682904
- Website
- bahn.de
Train from Essen Hbf to Basel SBB
- Ave. Duration
- 4h 48m
- Frequency
- Every 4 hours
- Estimated price
- €75–200
- Website
- https://int.bahn.de/en
Train from Essen Hbf to Frankfurt
- Ave. Duration
- 1h 45m
- Frequency
- Every 30 minutes
- Estimated price
- €30–90
- Website
- https://int.bahn.de/en
Train from Essen Hbf to Köln Hbf
- Ave. Duration
- 48 min
- Frequency
- Every 30 minutes
- Estimated price
- €18–30
- Website
- https://int.bahn.de/en
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Basel SBB to Lugano
- Ave. Duration
- 2h 55m
- Frequency
- Every 2 hours
- Estimated price
- €55–110
- Website
- https://www.sbb.ch/en
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 49 min
- Frequency
- Twice a week
- Estimated price
- €23–45
- Website
- https://www.sbb.ch/en
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Basel SBB to Lugano
- Ave. Duration
- 3h 21m
- Frequency
- Once daily
- Estimated price
- €20–25
- Schedules at
- sbb-deutschland.de
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 1h 6m
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 42 min
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
- Phone
- +39 02-72494949
- Website
- malpensaexpress.it
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 42 min
- Frequency
- Hourly
- Estimated price
- €15
- Website
- https://www.malpensaexpress.it/en/
- Phone
- +49 30 2970
- Website
- bahn.de
Train from Essen Hbf to Köln Hbf
- Ave. Duration
- 1h 35m
- Frequency
- Every 30 minutes
- Estimated price
- €15–22
- Website
- https://int.bahn.de/en
- Phone
- +44 343 218 6186
- Website
- eurostar.com
Train from Essen Hbf to Köln Hbf
- Ave. Duration
- 53 min
- Frequency
- Twice daily
- Estimated price
- €30–70
- Website
- https://www.eurostar.com/rw-en
- Standard
- €30–45
- Comfort
- €35–50
- Premium
- €50–70
Train from Essen Hbf to Koeln Hbf
- Ave. Duration
- 53 min
- Frequency
- Twice daily
- Estimated price
- €30–70
- Website
- https://www.eurostar.com/rw-en
- Standard
- €30–45
- Comfort
- €35–50
- Premium
- €50–70
- Phone
- +49 9126 301 90 70
- fahrgaeste@train-rental.com
- Website
- train-rental.com
Train from Essen Hbf to Köln Hbf
- Ave. Duration
- 59 min
- Frequency
- Twice daily
- Schedules at
- train-rental.com
- Phone
- 0221 13 999 444
- Website
- nationalexpress.de
Train from Essen Hbf to Koeln Hbf
- Ave. Duration
- 1h 3m
- Frequency
- Every 30 minutes
- Estimated price
- €15–22
- Schedules at
- nationalexpress.de
- Phone
- +43 51717
- Website
- nightjet.com
Night train from Koeln Hbf to Basel Sbb
- Ave. Duration
- 6h 28m
- Frequency
- Once daily
- Estimated price
- €45–263
- Website
- https://www.nightjet.com/en/#/home
- Sleeper Carriage
- €259–263
- Couchette Carriage
- €130–160
- Seating Carriage
- €45–60
- Phone
- +31 30 751 5155
- Website
- ns.nl
Night train from Koeln Hbf to Basel Sbb
- Ave. Duration
- 6h 38m
- Frequency
- Once daily
- Estimated price
- €70–260
- Website
- https://www.ns.nl/en
- 2nd Class
- €70–110
- 1st Class
- €150–260
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Dortmund central bus station to Milano, Autostazione Lampugnano
- Ave. Duration
- 14h
- Frequency
- Once daily
- Estimated price
- €45–130
- Website
- https://www.flixbus.co.uk
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Basel, Meret Oppenheim-Strasse (Bahnhof SBB) to Milano, Autostazione Lampugnano
- Ave. Duration
- 5h 25m
- Frequency
- Once daily
- Estimated price
- €20–50
- Website
- https://www.blablacar.co.uk/bus
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
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Getting to Milan from the airport
Read the travel guide
More Questions & Answers
Essen to Milan bus services, operated by FlixBus, arrive at Milano, Autostazione Lampugnano station.
Essen to Milan train services, operated by Deutsche Bahn Intercity (DB IC), arrive at Basel SBB station.
Yes, the driving distance between Essen to Milan is 884 km. It takes approximately 8h 6m to drive from Essen to Milan.
Book your Essen to Milan train tickets online with Omio.
Book your Essen to Milan bus tickets online with FlixBus.
There are 13491+ hotels available in Milan.

























































