There are 8 ways to get from Prague to Milan by plane, bus, train (Trenitalia), car, train, or subway
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly to Milan Linate Airport
best- Fly from Václav Havel Airport Prague (PRG) to Milan Linate Airport (LIN)plane PRG - LIN
5h 26m€93–227Fly to Milano Malpensa Airport, train
cheapest- Fly from Václav Havel Airport Prague (PRG) to Milano Malpensa Airport (MXP)plane PRG - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
4h 58m€36–139Bus
- Take the bus from Praha, Hlavní Nádraží to Milano, Autostazione Lampugnanobus N1308 / ...
12h 50m€40–110Train
- Take the train from Praha Hlavni Nadrazi to Muenchen Hbftrain Ec
- Take the train from München Hbf to Verona Porta Nuovatrain 89
- Take the train from Verona Porta Nuova to Milano Centraletrain Fr
13h 59m€158–302Drive 842.7 km
- Drive from Prague to Milancar 842.7 km
8h 42m€131–189Subway, fly to Il Caravaggio International Airport
- Take the subway from Staroměstská to Nádraží Veleslavínsubway
- Fly from Václav Havel Airport Prague (PRG) to Il Caravaggio International Airport (BGY)plane PRG - BGY
4h 45m€52–209Bus via Sankt Gallen
- Take the bus from Praha, ÚAN Florenc to St. Gallen Lagerstrassebus RegioJet 95 / ...
- Take the bus from St. Gallen Lagerstrasse to Milano, Autostazione Lampugnanobus RegioJet 22
15h€51–108Train via Bolzano
- Take the train from Praha Hlavni Nadrazi to Muenchen Hbftrain Ec
- Take the train from München Hbf to Bolzano-Bozentrain 89
- Take the train from Bolzano-Bozen to Milano Porta Garibalditrain
15h 40m€159–270
Prague to Milan by bus
Questions & Answers
The cheapest way to get from Prague to Milan is to bus which costs €40 - €110 and takes 12h 50m.
The fastest way to get from Prague to Milan is to subway and fly which takes 4h 45m and costs €50 - €210.
Yes, there is a direct bus departing from Praha, Hlavní Nádraží and arriving at Milano, Autostazione Lampugnano. Services depart once daily, and operate every day. The journey takes approximately 12h 50m.
No, there is no direct train from Prague to Milan. However, there are services departing from Praha Hlavni Nadrazi and arriving at Milano Centrale via München Hbf and Verona Porta Nuova. The journey, including transfers, takes approximately 13h 59m.
The distance between Prague and Milan is 658 km. The road distance is 842.7 km.
The best way to get from Prague to Milan without a car is to bus which takes 12h 50m and costs €40 - €110.
It takes approximately 5h 26m to get from Prague to Milan, including transfers.
Prague to Milan bus services, operated by FlixBus, depart from Praha, Hlavní Nádraží station.
Prague to Milan train services, operated by ÖBB EuroCity, depart from Praha Hlavni Nadrazi station.
The best way to get from Prague to Milan is to fly which takes 5h 26m and costs €90 - €230. Alternatively, you can bus, which costs €40 - €110 and takes 12h 50m, you could also train, which costs €150 - €310 and takes 13h 59m.
What companies run services between Prague, Czechia and Milan, Italy?
Lufthansa, Austrian Airlines, and three other airlines fly from Václav Havel Airport Prague (PRG) to Milan Linate Airport (LIN) every 4 hours. Alternatively, FlixBus operates a bus from Praha, Hlavní Nádraží to Milano, Autostazione Lampugnano once daily. Tickets cost €40–110 and the journey takes 12h 50m.
- Website
- lufthansa.com
Flights from Václav Havel Airport Prague to Milan Linate Airport via Munich
- Ave. Duration
- 3h 53m
- When
- Every day
- Estimated price
- €80–300
Flights from Václav Havel Airport Prague to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h 28m
- When
- Every day
- Estimated price
- €80–330
Flights from Václav Havel Airport Prague to Milano Malpensa Airport via Munich
- Ave. Duration
- 2h 55m
- When
- Monday, Tuesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €60–260
Flights from Václav Havel Airport Prague to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 3h 25m
- When
- Every day
- Estimated price
- €60–270
- Website
- ryanair.com
Flights from Václav Havel Airport Prague to Il Caravaggio International Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €45–130
- Website
- ita-airways.com
Flights from Václav Havel Airport Prague to Milan Linate Airport via Munich
- Ave. Duration
- 3h 17m
- When
- Every day
- Estimated price
- €80–300
Flights from Václav Havel Airport Prague to Milano Malpensa Airport via Munich
- Ave. Duration
- 2h 55m
- When
- Monday and Tuesday
- Estimated price
- €80–260
Flights from Václav Havel Airport Prague to Milano Malpensa Airport via Zurich
- Ave. Duration
- 3h 20m
- When
- Every day
- Estimated price
- €60–240
- Website
- easyjet.com
Flights from Václav Havel Airport Prague to Milano Malpensa Airport
- Ave. Duration
- 1h 30m
- When
- Monday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €25–110
- Website
- austrian.com
Flights from Václav Havel Airport Prague to Milan Linate Airport via Vienna
- Ave. Duration
- 4h 20m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €80–310
- Website
- airdolomiti.it
Flights from Václav Havel Airport Prague to Milan Linate Airport via Frankfurt
- Ave. Duration
- 4h
- When
- Every day
- Estimated price
- €80–300
Flights from Václav Havel Airport Prague to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 3h 30m
- When
- Tuesday to Sunday
- Estimated price
- €85–270
- Website
- brusselsairlines.com
Flights from Václav Havel Airport Prague to Milan Linate Airport via Brussels
- Ave. Duration
- 5h 37m
- When
- Monday to Saturday
- Estimated price
- €80–190
- Website
- swiss.com
Flights from Václav Havel Airport Prague to Milano Malpensa Airport via Zurich
- Ave. Duration
- 3h 17m
- When
- Every day
- Estimated price
- €60–240
- Website
- condor.com
Flights from Václav Havel Airport Prague to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 3h 30m
- When
- Saturday and Sunday
- Estimated price
- €50–120
- Website
- eurowings.com
Flights from Václav Havel Airport Prague to Il Caravaggio International Airport via Dusseldorf
- Ave. Duration
- 3h 55m
- When
- Monday
- Estimated price
- €55–210
- Phone
- +43 5 1717
- Website
- oebb.at
Train from Praha Hlavni Nadrazi to Muenchen Hbf
- Ave. Duration
- 5h 43m
- Frequency
- Every 4 hours
- Estimated price
- €75–100
- Website
- https://www.oebb.at/en/reiseplanung-services/im-zug/unsere-zuege/eurocity-intercity
- Website
- https://shop.oebbtickets.at/en/ticket
- Phone
- +49 30 311 682904
- Website
- bahn.de
Train from München Hbf to Verona Porta Nuova
- Ave. Duration
- 5h 29m
- Frequency
- Every 4 hours
- Estimated price
- €65–120
- Website
- https://int.bahn.de/en
Train from München Hbf to Bolzano-Bozen
- Ave. Duration
- 3h 55m
- Frequency
- Every 4 hours
- Estimated price
- €65–150
- Website
- https://int.bahn.de/en
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Verona Porta Nuova to Milano Centrale
- Ave. Duration
- 1h 13m
- Frequency
- Hourly
- Estimated price
- €17–35
- Schedules at
- trenitalia.com
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Verona Porta Nuova to Milano Centrale
- Ave. Duration
- 1h 23m
- Frequency
- Twice daily
- Estimated price
- €35–85
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €55–85
- 2nd Class
- €35–50
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
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/
Train from Bolzano-Bozen to Milano Porta Garibaldi
- Ave. Duration
- 4h 2m
- Frequency
- Once daily
- Estimated price
- €18–23
- 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
- +420 234 704 560
- info@pid.cz
- Website
- pid.cz
Subway from Staroměstská to Nádraží Veleslavín
- Ave. Duration
- 9 min
- Frequency
- Every 10 minutes
- Estimated price
- €1–2
- Website
- https://pid.cz/en/
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Praha, Hlavní Nádraží to Milano, Autostazione Lampugnano
- Ave. Duration
- 12h 50m
- Frequency
- Once daily
- Estimated price
- €40–110
- Website
- https://www.flixbus.co.uk
- Phone
- +420 222 222 221
- info@regiojet.cz
- Website
- regiojet.com
Bus from Praha, ÚAN Florenc to St. Gallen Lagerstrasse
- Ave. Duration
- 8h 35m
- Frequency
- 3 times a week
- Estimated price
- €28–60
- Website
- https://regiojet.com/
Bus from St. Gallen Lagerstrasse to Milano, Autostazione Lampugnano
- Ave. Duration
- 5h 25m
- Frequency
- Once a week
- Estimated price
- €23–50
- Website
- https://regiojet.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
Want to know more about Flixbus?
Read the travel guide
More Questions & Answers
Prague to Milan bus services, operated by FlixBus, arrive at Milano, Autostazione Lampugnano station.
Prague to Milan train services, operated by ÖBB EuroCity, arrive at Muenchen Hbf station.
Yes, the driving distance between Prague to Milan is 843 km. It takes approximately 8h 42m to drive from Prague to Milan.
Book your Prague to Milan train tickets online with Omio.
Book your Prague to Milan bus tickets online with Omio and FlixBus.
There are 13560+ hotels available in Milan.

































