There are 11 ways to get from Milan to Witten by plane, train, train (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 Milan Linate Airport to Düsseldorf International Airport, train
best- Fly from Milan Linate Airport (LIN) to Düsseldorf International Airport (DUS)plane LIN - DUS
- Take the train from Duesseldorf Hbf to Witten Hbftrain
5h 38mTrain to Milano Malpensa Airport, fly to Dortmund Airport
cheapest- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Dortmund Airport (DTM)plane MXP - DTM
5h 50m€32–212Train via Basel
- Take the train from Milano Centrale to Basel Sbbtrain Ec
- Take the train from Basel SBB to Hagen Hbftrain 43
10h 22m€176–347Train, bus
- Take the train from Milano Porta Garibaldi to Como S.Giovannitrain S11
- Take the train from Como S. Giovanni to Zürich HBtrain Ec
- Take the bus from Zürich Bus Station to Kölnbus
- Take the train from Koeln Hbf to Wuppertal-Oberbarmentrain Re / ...
14h 14mDrive 878.9 km
- Drive from Milan to Wittencar 878.9 km
8h 5m€142–205Train to Milano Malpensa Airport, fly to Düsseldorf International Airport, train
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Düsseldorf International Airport (DUS)plane MXP - DUS
- Take the train from Duesseldorf Hbf to Witten Hbftrain
6h 10mTrain to Milano Malpensa Airport, fly to Cologne Bonn Airport, train
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Cologne Bonn Airport (CGN)plane MXP - CGN
- Take the train from Köln Hbf to Hagen Hbftrain
6h 21m€75–262Fly Milan Linate Airport to Frankfurt, train
- Fly from Milan Linate Airport (LIN) to Frankfurt (FRA)plane LIN - FRA
- Take the train from Frankfurt to Hagen Hbftrain
6h 17m€79–252Bus to Il Caravaggio International Airport, fly to Cologne Bonn Airport, train
- Take the bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airportbus
- Fly from Il Caravaggio International Airport (BGY) to Cologne Bonn Airport (CGN)plane BGY - CGN
- Take the train from Köln Hbf to Hagen Hbftrain
6h 28m€86–290Train
- Take the train from Milano Centrale to Mannheim Hbftrain Ec
- Take the train from Mannheim, Hauptbahnhof to Hagen Hbftrain 42 / ...
10h 22m€175–306Bus
- Take the bus from Milan to Dortmund central bus stationbus FlixBus N07
15h 55m€78–131
Milan to Witten by train
Comparing Your Travel Options
The cheapest way to get from Milan to Witten is to bus which costs €75 - €140 and takes 15h 55m.
The fastest way to get from Milan to Witten is to train and fly which takes 5h 50m and costs €30 - €220.
No, there is no direct bus from Milan to Witten station. However, there are services departing from Milano, Autostazione Lampugnano and arriving at Dortmund central bus station via Milan. The journey, including transfers, takes approximately 15h 55m.
No, there is no direct train from Milan to Witten. However, there are services departing from Milano Centrale and arriving at Witten Hbf via Basel SBB and Hagen Hbf. The journey, including transfers, takes approximately 10h 22m.
The distance between Milan and Witten is 757 km. The road distance is 878.9 km.
The best way to get from Milan to Witten without a car is to train via Basel which takes 10h 22m and costs €170 - €350.
It takes approximately 5h 38m to get from Milan to Witten, including transfers.
Milan to Witten bus services, operated by FlixBus, depart from Milan station.
Milan to Witten train services, operated by Trenitalia EuroCity, depart from Milano Centrale station.
The best way to get from Milan to Witten is to train via Basel which takes 10h 22m and costs €170 - €350. Alternatively, you can bus, which costs €75 - €140 and takes 15h 55m.
What companies run services between Milan, Italy and Witten, Germany?
You can take a train from Milano Centrale to Witten Hbf via Basel SBB and Hagen Hbf in around 10h 22m. Alternatively, FlixBus operates a bus from Milan to Dortmund central bus station once daily. Tickets cost €75–120 and the journey takes 14h 15m.
- Website
- lufthansa.com
Flights from Milan Linate Airport to Düsseldorf International Airport via Munich
- Ave. Duration
- 3h 32m
- When
- Monday, Tuesday, Wednesday, Sunday, Thursday, and Friday
- Estimated price
- €100–320
Flights from Milan Linate Airport to Düsseldorf International Airport via Frankfurt
- Ave. Duration
- 3h 22m
- When
- Every day
- Estimated price
- €100–320
Flights from Milano Malpensa Airport to Düsseldorf International Airport via Frankfurt
- Ave. Duration
- 3h 3m
- When
- Thursday to Saturday
- Estimated price
- €75–420
Flights from Milano Malpensa Airport to Düsseldorf International Airport via Munich
- Ave. Duration
- 3h 17m
- When
- Every day
- Estimated price
- €80–290
Flights from Milano Malpensa Airport to Cologne Bonn Airport via Munich
- Ave. Duration
- 3h 46m
- When
- Every day
- Estimated price
- €45–310
Flights from Milan Linate Airport to Frankfurt
- Ave. Duration
- 1h 17m
- When
- Every day
- Estimated price
- €50–400
Flights from Milan Linate Airport to Frankfurt via Munich
- Ave. Duration
- 3h 18m
- When
- Every day
- Estimated price
- €50–340
- Website
- ita-airways.com
Flights from Milan Linate Airport to Düsseldorf International Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €80–200
Flights from Milan Linate Airport to Düsseldorf International Airport via Munich
- Ave. Duration
- 3h 10m
- When
- Monday, Tuesday, Wednesday, Sunday, Thursday, and Friday
- Estimated price
- €100–320
Flights from Milan Linate Airport to Düsseldorf International Airport via Frankfurt
- Ave. Duration
- 3h 55m
- When
- Every day
- Estimated price
- €100–320
Flights from Milano Malpensa Airport to Düsseldorf International Airport via Frankfurt
- Ave. Duration
- 2h 55m
- When
- Thursday to Saturday
- Estimated price
- €75–280
Flights from Milano Malpensa Airport to Düsseldorf International Airport via Zurich
- Ave. Duration
- 3h 15m
- When
- Every day
- Estimated price
- €70–280
Flights from Milano Malpensa Airport to Düsseldorf International Airport via Munich
- Ave. Duration
- 3h 25m
- When
- Tuesday to Sunday
- Estimated price
- €80–290
Flights from Milano Malpensa Airport to Cologne Bonn Airport
- Ave. Duration
- 1h 25m
- When
- Monday, Friday, and Sunday
- Estimated price
- €60–170
Flights from Milano Malpensa Airport to Cologne Bonn Airport via Munich
- Ave. Duration
- 3h 50m
- When
- Monday, Tuesday, Thursday, Friday, and Saturday
- Estimated price
- €85–310
Flights from Milan Linate Airport to Frankfurt
- Ave. Duration
- 1h 17m
- When
- Every day
- Estimated price
- €50–400
Flights from Milan Linate Airport to Frankfurt via Munich
- Ave. Duration
- 3h 20m
- When
- Monday and Wednesday
- Estimated price
- €50–200
- Website
- eurowings.com
Flights from Milan Linate Airport to Düsseldorf International Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €80–200
Flights from Milano Malpensa Airport to Düsseldorf International Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Thursday, Friday, and Sunday
- Estimated price
- €85–280
Flights from Milano Malpensa Airport to Cologne Bonn Airport
- Ave. Duration
- 1h 25m
- When
- Monday, Friday, and Sunday
- Estimated price
- €60–170
- Website
- easyjet.com
Flights from Milano Malpensa Airport to Düsseldorf International Airport
- Ave. Duration
- 1h 37m
- When
- Every day
- Estimated price
- €20–130
Flights from Milan Linate Airport to Frankfurt
- Ave. Duration
- 1h 20m
- When
- Every day
- Estimated price
- €35–140
- Website
- airdolomiti.it
Flights from Milan Linate Airport to Frankfurt
- Ave. Duration
- 1h 17m
- When
- Every day
- Estimated price
- €50–400
- Website
- ryanair.com
Flights from Il Caravaggio International Airport to Cologne Bonn Airport
- Ave. Duration
- 1h 27m
- When
- Tuesday to Sunday
- Estimated price
- €65–220
- Website
- airfrance.com
Flights from Milan Linate Airport to Düsseldorf International Airport via Paris Charles de Gaulle
- Ave. Duration
- 3h 41m
- When
- Every day
- Estimated price
- €55–330
- Website
- swiss.com
Flights from Milano Malpensa Airport to Düsseldorf International Airport via Zurich
- Ave. Duration
- 3h 15m
- When
- Every day
- Estimated price
- €70–280
Flights from Milano Malpensa Airport to Cologne Bonn Airport via Zurich
- Ave. Duration
- 3h 20m
- When
- Monday to Saturday
- Estimated price
- €60–170
- Website
- flyulendo.com
Flights from Milano Malpensa Airport to Dortmund Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- €27–200
- Phone
- +49 221 13 999 444
- Website
- National Express
Train from Duesseldorf Hbf to Witten Hbf
- Ave. Duration
- 59 min
- Frequency
- Hourly
- Schedules at
- National Express
Train from Koeln Hbf to Wuppertal-Oberbarmen
- Ave. Duration
- 39 min
- Frequency
- Every 30 minutes
- Schedules at
- National Express
Train from Duesseldorf Hbf to Witten Hbf
- Ave. Duration
- 59 min
- Frequency
- Hourly
- Schedules at
- National Express
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- Trenitalia Eurocity
Train from Milano Centrale to Basel Sbb
- Ave. Duration
- 4h 20m
- Frequency
- Every 3 hours
- Estimated price
- €75–130
- Website
- Trenitalia Eurocity
- 1st Class
- €90–130
- 2nd Class
- €75–110
Train from Milano Centrale to Mannheim Hbf
- Ave. Duration
- 6h 55m
- Frequency
- Once daily
- Estimated price
- €120–180
- Website
- Trenitalia Eurocity
- 1st Class
- €120–180
- 2nd Class
- €120–160
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Basel SBB to Hagen Hbf
- Ave. Duration
- 4h 42m
- Frequency
- Every 4 hours
- Estimated price
- €95–210
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Köln Hbf to Hagen Hbf
- Ave. Duration
- 46 min
- Frequency
- Hourly
- Estimated price
- €12–27
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Frankfurt to Hagen Hbf
- Ave. Duration
- 1h 47m
- Frequency
- Hourly
- Estimated price
- €40–90
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Köln Hbf to Hagen Hbf
- Ave. Duration
- 46 min
- Frequency
- Hourly
- Estimated price
- €12–27
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Mannheim, Hauptbahnhof to Hagen Hbf
- Ave. Duration
- 2h 24m
- Frequency
- Hourly
- Estimated price
- €50–120
- Website
- Deutsche Bahn Intercity (DB IC)
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- Trenord
Train from Milano Porta Garibaldi to Como S.Giovanni
- Ave. Duration
- 1h 1m
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- Trenord
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
Train from Milano Porta Garibaldi to Como S.Giovanni
- Ave. Duration
- 1h 1m
- Frequency
- Once daily
- Estimated price
- €17–24
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Como S. Giovanni to Zürich HB
- Ave. Duration
- 2h 36m
- Frequency
- Hourly
- Estimated price
- €75–110
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- +38 098-888-11-08
- igoruzhanskyi@grandbus.com.ua
- Website
- Grand Bus
Bus from Zürich Bus Station to Köln
- Ave. Duration
- 6h 50m
- Frequency
- Once daily
- Estimated price
- €54–59
- Website
- Grand Bus
- customerservices@terravision.eu
- Website
- TERRAVISION
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–23
- Website
- TERRAVISION
- Phone
- 035.319366
- ticket@orioshuttle.com
- Website
- orioshuttle.com
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €11–15
- Schedules at
- orioshuttle.com
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- Flixbus
Bus from Milan to Dortmund central bus station
- Ave. Duration
- 14h 15m
- Frequency
- Once daily
- Estimated price
- €75–120
- Website
- Flixbus
Want to know more about travelling around Germany
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
Booking & Getting There
Milan to Witten bus services, operated by FlixBus, arrive at Dortmund central bus station.
Milan to Witten train services, operated by Trenitalia EuroCity, arrive at Basel Sbb station.
Yes, the driving distance between Milan to Witten is 879 km. It takes approximately 8h 5m to drive from Milan to Witten.
There are 1829+ hotels available in Witten.



































