There are 12 ways to get from Zwolle to Milan by train, plane, train (TGV, Trenitalia), bus, night train, car, or car train
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train to Amsterdam Airport Schiphol, fly to Milan Linate Airport
best- Take the train from Zwolle to Schiphol Airport Train Stationtrain
- Fly from Amsterdam Airport Schiphol (AMS) to Milan Linate Airport (LIN)plane AMS - LIN
5h 2m€79–258Train, train to Brussels Airport, fly to Milan Linate Airport
cheapest- Take the train from Zwolle to Amsterdam Zuidtrain
- Take the train from Amsterdam Zuid to Antwerpen-Centraaltrain
- Fly from Brussels Airport (BRU) to Milan Linate Airport (LIN)plane BRU - LIN
7h 25m€69–281Train
- Take the train from Zwolle to Schiphol Airport Train Stationtrain
- Take the train from Schiphol Airport Train Station to Airport Charles de Gaulletrain
- Take the train from Aeroport Cdg2 Tgv Roissy to Lyon Part Dieutrain Tgv
- Take the train from Lyon Part Dieu to Milano Centraletrain Fr
12h 37m€193–375Train, bus
- Take the train from Zwolle to Osstrain
- Take the bus from Oss, Centraal Station to Eindhoven, Centraal Stationbus 305 / ...
- Take the bus from Eindhoven Station to Milanbus
18h 49m€106–185Night train, train
- Take the night train from Deventer to Zuerich Hbnighttrain Nj
- Take the train from Zürich HB to Como S. Giovannitrain Ec
- Take the train from Como S.Giovanni to Milano Porta Garibalditrain S11
17h 38m€127–422Train to Amsterdam Airport Schiphol, fly to Milano Malpensa Airport, train
- Take the train from Zwolle to Schiphol Airport Train Stationtrain
- Fly from Amsterdam Airport Schiphol (AMS) to Milano Malpensa Airport (MXP)plane AMS - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
5h 57m€82–251Train, train to Düsseldorf International Airport, fly to Milan Linate Airport
- Take the train from Zwolle to Arnhem Centraaltrain
- Take the train from Arnhem Centraal to Duesseldorf Flughafentrain
- Fly from Düsseldorf International Airport (DUS) to Milan Linate Airport (LIN)plane DUS - LIN
6h 44m€126–318Train, train to Düsseldorf International Airport, fly to Milano Malpensa Airport
- Take the train from Zwolle to Arnhem Centraaltrain
- Take the train from Arnhem Centraal to Duesseldorf Flughafentrain
- Fly from Düsseldorf International Airport (DUS) to Milano Malpensa Airport (MXP)plane DUS - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
7h 28m€99–251Train, train to Eindhoven Airport, fly to Il Caravaggio International Airport, bus
- Take the train from Zwolle to Utrecht Centraaltrain
- Take the train from Utrecht Centraal to Eindhoven Centraaltrain
- Fly from Eindhoven Airport (EIN) to Il Caravaggio International Airport (BGY)plane EIN - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
8h 16m€94–351Drive, car train
- Drive from Zwolle to Hannover Hbfcar
- Take the car train from Hannover Hbf to Freiburg im Breisgau Train Stationcartrain
- Drive from Freiburg im Breisgau Train Station to Milancar
14h 33m€206–289Bus
- Take the bus from Zwolle, Katwolderplein/Centrum to Apeldoorn, Stationbus 210 / ...
- Take the bus from Apeldoorn train station to Amsterdam Sloterdijkbus
- Take the bus from Amsterdam City Center - Sloterdijk to Milano, Autostazione Lampugnanobus
20h 41m€111–202Drive 1,041.3 km
- Drive from Zwolle to Milancar 1,041.3 km
9h 36m€186–269
Zwolle to Milan by train
Questions & Answers
The cheapest way to get from Zwolle to Milan is to train and bus which costs €100 - €190 and takes 18h 49m.
The fastest way to get from Zwolle to Milan is to train and fly which takes 5h 2m and costs €75 - €260.
No, there is no direct bus from Zwolle to Milan. However, there are services departing from Zwolle, Katwolderplein/Centrum and arriving at Milano, Autostazione Lampugnano via Apeldoorn train station and Amsterdam City Center - Sloterdijk. The journey, including transfers, takes approximately 20h 41m.
No, there is no direct train from Zwolle to Milan. However, there are services departing from Zwolle and arriving at Milano Centrale via Schiphol Airport Train Station, Aeroport Cdg2 Tgv Roissy and Lyon Part Dieu. The journey, including transfers, takes approximately 12h 37m.
The distance between Zwolle and Milan is 948 km. The road distance is 1041.3 km.
The best way to get from Zwolle to Milan without a car is to train which takes 12h 37m and costs €190 - €380.
It takes approximately 5h 2m to get from Zwolle to Milan, including transfers.
Zwolle to Milan bus services, operated by RRReis, depart from Zwolle, Katwolderplein/Centrum station.
Zwolle to Milan train services, operated by Nederlandse Spoorwegen (NS), depart from Zwolle station.
The best way to get from Zwolle to Milan is to train which takes 12h 37m and costs €190 - €380. Alternatively, you can bus, which costs €110 - €210 and takes 20h 41m.
What companies run services between Zwolle, Netherlands and Milan, Italy?
You can take a train from Zwolle to Milano Centrale via Schiphol Airport Train Station, Aeroport Cdg2 Tgv Roissy, and Lyon Part Dieu in around 12h 37m. Alternatively, you can take a bus from Zwolle, Katwolderplein/Centrum to Milano, Autostazione Lampugnano via Apeldoorn, Station, Apeldoorn train station, and Amsterdam City Center - Sloterdijk in around 20h 41m.
- Website
- easyjet.com
Flights from Amsterdam Airport Schiphol to Milan Linate Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- €60–220
Flights from Amsterdam Airport Schiphol to Milano Malpensa Airport
- Ave. Duration
- 1h 44m
- When
- Monday, Tuesday, Friday, Sunday, Thursday, and Wednesday
- Estimated price
- €50–230
Flights from Düsseldorf International Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €40–130
Flights from Brussels Airport to Milan Linate Airport
- Ave. Duration
- 1h 23m
- When
- Every day
- Estimated price
- €35–180
- Website
- lufthansa.com
Flights from Amsterdam Airport Schiphol to Milan Linate Airport via Frankfurt
- Ave. Duration
- 3h 46m
- When
- Every day
- Estimated price
- €120–360
Flights from Düsseldorf International Airport to Milan Linate Airport via Munich
- Ave. Duration
- 3h 23m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €65–280
Flights from Düsseldorf International Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 3h 30m
- When
- Every day
- Estimated price
- €140–280
Flights from Düsseldorf International Airport to Milano Malpensa Airport via Munich
- Ave. Duration
- 3h 10m
- When
- Tuesday to Friday
- Estimated price
- €80–310
Flights from Düsseldorf International Airport to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 3h 30m
- When
- Monday and Thursday
- Estimated price
- €80–300
Flights from Brussels Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 3h 35m
- When
- Monday, Tuesday, Friday, Saturday, and Sunday
- Estimated price
- €180–410
- Website
- ita-airways.com
Flights from Amsterdam Airport Schiphol to Milan Linate Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- €85–240
Flights from Düsseldorf International Airport to Milan Linate Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €65–200
Flights from Düsseldorf International Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 3h 12m
- When
- Every day
- Estimated price
- €140–280
Flights from Düsseldorf International Airport to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 3h 30m
- When
- Monday and Thursday
- Estimated price
- €80–300
Flights from Düsseldorf International Airport to Milano Malpensa Airport via Zurich
- Ave. Duration
- 3h 45m
- When
- Every day
- Estimated price
- €80–280
Flights from Brussels Airport to Milan Linate Airport
- Ave. Duration
- 1h 28m
- When
- Every day
- Estimated price
- €70–280
- Website
- klm.com
Flights from Amsterdam Airport Schiphol to Milan Linate Airport
- Ave. Duration
- 1h 38m
- When
- Every day
- Estimated price
- €65–370
Flights from Düsseldorf International Airport to Milan Linate Airport via Amsterdam Airport Schiphol
- Ave. Duration
- 3h 40m
- When
- Every day
- Estimated price
- €60–340
Flights from Brussels Airport to Milan Linate Airport via Amsterdam Airport Schiphol
- Ave. Duration
- 3h 35m
- When
- Saturday and Sunday
- Estimated price
- €55–320
- Website
- swiss.com
Flights from Amsterdam Airport Schiphol to Milano Malpensa Airport via Zurich
- Ave. Duration
- 3h 40m
- When
- Every day
- Estimated price
- €95–330
Flights from Düsseldorf International Airport to Milano Malpensa Airport via Zurich
- Ave. Duration
- 3h 20m
- When
- Every day
- Estimated price
- €45–280
- Website
- ryanair.com
Flights from Eindhoven Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- €50–240
Flights from Eindhoven Airport to Il Caravaggio International Airport via London Stansted
- Ave. Duration
- 4h
- When
- Thursday
- Estimated price
- €50–240
- Website
- eurowings.com
Flights from Düsseldorf International Airport to Milan Linate Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €65–200
Flights from Düsseldorf International Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 25m
- When
- Monday
- Estimated price
- €45–190
- Website
- brusselsairlines.com
Flights from Brussels Airport to Milan Linate Airport
- Ave. Duration
- 1h 28m
- When
- Every day
- Estimated price
- €70–280
- Phone
- +31 30 751 5155
- Website
- ns.nl
Train from Zwolle to Schiphol Airport Train Station
- Ave. Duration
- 1h 14m
- Frequency
- Every 30 minutes
- Estimated price
- €12–26
- Website
- https://www.ns.nl/en
Train from Zwolle to Schiphol Airport Train Station
- Ave. Duration
- 1h 14m
- Frequency
- Every 30 minutes
- Estimated price
- €12–26
- Website
- https://www.ns.nl/en
Train from Schiphol Airport Train Station to Airport Charles de Gaulle
- Ave. Duration
- 2h 8m
- Frequency
- Twice a week
- Estimated price
- €50–110
- Website
- https://www.ns.nl/en
Train from Zwolle to Oss
- Ave. Duration
- 1h 33m
- Frequency
- Every 30 minutes
- Estimated price
- €13–27
- Website
- https://www.ns.nl/en
Train from Zwolle to Schiphol Airport Train Station
- Ave. Duration
- 1h 14m
- Frequency
- Every 30 minutes
- Estimated price
- €12–26
- Website
- https://www.ns.nl/en
Train from Zwolle to Arnhem Centraal
- Ave. Duration
- 59 min
- Frequency
- Every 30 minutes
- Estimated price
- €8–17
- Website
- https://www.ns.nl/en
Train from Zwolle to Arnhem Centraal
- Ave. Duration
- 59 min
- Frequency
- Every 30 minutes
- Estimated price
- €8–17
- Website
- https://www.ns.nl/en
Train from Zwolle to Utrecht Centraal
- Ave. Duration
- 1h 16m
- Frequency
- Every 20 minutes
- Estimated price
- €9–20
- Website
- https://www.ns.nl/en
Train from Utrecht Centraal to Eindhoven Centraal
- Ave. Duration
- 1h 44m
- Frequency
- Every 15 minutes
- Estimated price
- €18–40
- Website
- https://www.ns.nl/en
Train from Zwolle to Amsterdam Zuid
- Ave. Duration
- 1h 2m
- Frequency
- Every 30 minutes
- Estimated price
- €11–24
- Website
- https://www.ns.nl/en
Train from Amsterdam Zuid to Antwerpen-Centraal
- Ave. Duration
- 1h 22m
- Frequency
- Hourly
- Estimated price
- €17–35
- Website
- https://www.ns.nl/en
- Phone
- 0800-0232 545
- Website
- arriva.nl
Train from Zwolle to Schiphol Airport Train Station
- Ave. Duration
- 1h 21m
- Frequency
- Twice a week
- Estimated price
- €17–25
- Website
- https://www.arriva.nl/en/
- Second Class Single
- €17–25
Train from Zwolle to Schiphol Airport Train Station
- Ave. Duration
- 1h 21m
- Frequency
- Twice a week
- Estimated price
- €17–25
- Website
- https://www.arriva.nl/en/
- Second Class Single
- €17–25
Train from Zwolle to Schiphol Airport Train Station
- Ave. Duration
- 1h 21m
- Frequency
- Twice a week
- Estimated price
- €17–25
- Website
- https://www.arriva.nl/en/
- Second Class Single
- €17–25
Train from Utrecht Centraal to Eindhoven Centraal
- Ave. Duration
- 48 min
- Frequency
- Once a week
- Estimated price
- €23–35
- Website
- https://www.arriva.nl/en/
- Second Class Single
- €23–35
Train from Zwolle to Amsterdam Zuid
- Ave. Duration
- 1h 1m
- Frequency
- Twice a week
- Estimated price
- €16–24
- Website
- https://www.arriva.nl/en/
- Second Class Single
- €16–24
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Aeroport Cdg2 Tgv Roissy to Lyon Part Dieu
- Ave. Duration
- 2h 5m
- Frequency
- Hourly
- Estimated price
- €90–150
- Website
- https://www.sncf-connect.com/en-en
- Phone
- +33 1 84 94 36 35
- Website
- track.effiliation.com
Train from Aeroport Cdg2 Tgv Roissy to Lyon Part Dieu
- Ave. Duration
- 2h 1m
- Frequency
- 4 times a day
- Estimated price
- €75–150
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Lyon Part Dieu to Milano Centrale
- Ave. Duration
- 4h 44m
- Frequency
- 4 times a day
- Estimated price
- €55–90
- Website
- https://www.trenitalia.com/en.html
- Phone
- +43 (0) 51717
- Website
- nightjet.com
Night train from Deventer to Zuerich Hb
- Ave. Duration
- 11h 23m
- Frequency
- Twice a week
- Estimated price
- €45–130
- Website
- https://www.nightjet.com/en/#/home
- Sleeper Carriage
- €100–130
- Couchette Carriage
- €75–90
- Seating Carriage
- €45–55
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Zürich HB to Como S. Giovanni
- Ave. Duration
- 2h 35m
- Frequency
- Hourly
- Estimated price
- €75–230
- Website
- https://www.sbb.ch/en
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 1h 2m
- Frequency
- Once daily
- Estimated price
- €17–55
- Website
- https://www.sbb.ch/en
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- trenord.it
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 1h 1m
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
- Phone
- +49 6078 966930
- [email protected]
- Website
- vias-online.de
Train from Arnhem Centraal to Duesseldorf Flughafen
- Ave. Duration
- 1h 39m
- Frequency
- Every 30 minutes
- Estimated price
- €40–65
- Schedules at
- vias-online.de
Train from Arnhem Centraal to Duesseldorf Flughafen
- Ave. Duration
- 1h 39m
- Frequency
- Every 30 minutes
- Estimated price
- €40–65
- Schedules at
- vias-online.de
- Phone
- +49 (0) 221 800 20 820
- [email protected]
- Website
- urlaubs-express.de
Car train from Hannover Hbf to Freiburg im Breisgau Train Station
- Ave. Duration
- 7h 23m
- Frequency
- Once a week
- Estimated price
- €95–120
- Website
- https://urlaubs-express.de/?lang=en
- Phone
- 0900-9292
- [email protected]
- Website
- bravo.info
Bus from Oss, Centraal Station to Eindhoven, Centraal Station
- Ave. Duration
- 1h 9m
- Frequency
- Every 30 minutes
- Estimated price
- €12–15
- Website
- https://www.bravo.info/public-transport-brabant
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- https://www.flixbus.fr
Bus from Eindhoven Station to Milan
- Ave. Duration
- 14h 30m
- Frequency
- 6 times a week
- Estimated price
- €80–140
- Website
- https://www.flixbus.co.uk
Bus from Apeldoorn train station to Amsterdam Sloterdijk
- Ave. Duration
- 1h 25m
- Frequency
- Once daily
- Estimated price
- €7–13
- Website
- https://www.flixbus.co.uk
- [email protected]
- Website
- terravision.eu
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–25
- Website
- https://www.terravision.eu/
- Phone
- +31 88 033 1360
- Website
- rrreis.nl
Bus from Zwolle, Katwolderplein/Centrum to Apeldoorn, Station
- Ave. Duration
- 46 min
- Frequency
- Every 30 minutes
- Estimated price
- €9
- Schedules at
- rrreis.nl
- Phone
- +3 318 576 2228
- Website
- blablacar.co.uk
Bus from Amsterdam City Center - Sloterdijk to Milano, Autostazione Lampugnano
- Ave. Duration
- 16h 30m
- Frequency
- Twice daily
- Estimated price
- €95–180
- 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
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
More Questions & Answers
Zwolle to Milan bus services, operated by RRReis, arrive at Apeldoorn, Station.
Zwolle to Milan train services, operated by Nederlandse Spoorwegen (NS), arrive at Schiphol Airport Train Station.
Yes, the driving distance between Zwolle to Milan is 1041 km. It takes approximately 9h 36m to drive from Zwolle to Milan.
Book your Zwolle to Milan train tickets online with Omio.
There are 14427+ hotels available in Milan.


















































