There are 9 ways to get from Berlin to Milan by plane, train (Trenitalia), bus, car, train, 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.
Fly to Milan Linate Airport
best- Fly from Berlin Brandenburg Airport (BER) to Milan Linate Airport (LIN)plane BER - LIN
4h 29m€44–226Bus
cheapest- Take the bus from Berlin, Zentralen Omnibusbahnhof to Milano, Autostazione Lampugnanobus N95
15h 55m€40–130Train via Nuremberg
- Take the train from Berlin Hbf to Nürnberg Hbftrain 29 / ...
- Take the train from Nürnberg Hbf to München Hbftrain 29 / ...
- Take the train from München Hbf to Verona Porta Nuovatrain 89
- Take the train from Verona Porta Nuova to Milano Centraletrain Fr
12h 28m€128–391Drive 1,011.2 km
- Drive from Berlin to Milancar 1,011.2 km
9h 51m€158–228Fly to Milano Malpensa Airport, train
- Fly from Berlin Brandenburg Airport (BER) to Milano Malpensa Airport (MXP)plane BER - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
5h 16m€57–238Fly to Il Caravaggio International Airport
- Fly from Berlin Brandenburg Airport (BER) to Il Caravaggio International Airport (BGY)plane BER - BGY
5h 3m€48–268Train
- Take the train from Berlin Hbf to Basel SBBtrain 12 / ...
- Take the train from Basel SBB to Luganotrain Ec
- Take the train from Como S.Giovanni to Milano Porta Garibalditrain S11
13h 23m€113–417Bus via Kunowice
- Take the bus from BERLIN, ZOB am Funkturm to SŁUBICE, Port Świecko, Świecko 39bus
- Take the bus from SŁUBICE, Port Świecko, Świecko 39 to Milano, Autostazione Lampugnanobus
20h 56m€135–186Drive, car train
- Drive from Berlin to Göttingencar
- Take the car train from Göttingen to München Ostcartrain
- Drive from München Ost to Milancar
12h 9m€207–288
Berlin to Milan by train
Questions & Answers
The cheapest way to get from Berlin to Milan is to bus which costs €40 - €130 and takes 15h 55m.
The fastest way to get from Berlin to Milan is to fly which takes 4h 29m and costs €40 - €230.
Yes, there is a direct bus departing from Berlin, Zentralen Omnibusbahnhof and arriving at Milano, Autostazione Lampugnano. Services depart twice daily, and operate every day. The journey takes approximately 15h 55m.
No, there is no direct train from Berlin to Milan. However, there are services departing from Berlin Hbf and arriving at Milano Centrale via Nürnberg Hbf, München Hbf and Verona Porta Nuova. The journey, including transfers, takes approximately 12h 28m.
The distance between Berlin and Milan is 862 km. The road distance is 1011.2 km.
The best way to get from Berlin to Milan without a car is to train via Nuremberg which takes 12h 28m and costs €120 - €400.
It takes approximately 4h 29m to get from Berlin to Milan, including transfers.
Berlin to Milan bus services, operated by FlixBus, depart from Berlin, Zentralen Omnibusbahnhof station.
Berlin to Milan train services, operated by Deutsche Bahn Intercity (DB IC), depart from Berlin Hbf station.
The best way to get from Berlin to Milan is to fly which takes 4h 29m and costs €40 - €230. Alternatively, you can train via Nuremberg, which costs €120 - €400 and takes 12h 28m, you could also bus, which costs €40 - €130 and takes 15h 55m.
What companies run services between Berlin, Germany and Milan, Italy?
easyJet, Lufthansa, and three other airlines fly from Berlin Brandenburg Airport (BER) to Milan Linate Airport (LIN) every 4 hours. Alternatively, you can take a train from Berlin Hbf to Milano Centrale via Nürnberg Hbf, München Hbf, and Verona Porta Nuova in around 12h 28m.
- Website
- lufthansa.com
Flights from Berlin Brandenburg Airport to Milan Linate Airport via Munich
- Ave. Duration
- 3h 22m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €100–220
Flights from Berlin Brandenburg Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 3h 44m
- When
- Every day
- Estimated price
- €100–350
Flights from Berlin Brandenburg Airport to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 3h 31m
- When
- Every day
- Estimated price
- €65–290
Flights from Berlin Brandenburg Airport to Milano Malpensa Airport via Munich
- Ave. Duration
- 3h 31m
- When
- Every day
- Estimated price
- €65–260
- Website
- easyjet.com
Flights from Berlin Brandenburg Airport to Milan Linate Airport
- Ave. Duration
- 1h 47m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €40–190
- Website
- ita-airways.com
Flights from Berlin Brandenburg Airport to Milan Linate Airport via Munich
- Ave. Duration
- 3h 10m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €100–220
Flights from Berlin Brandenburg Airport to Milano Malpensa Airport via Zurich
- Ave. Duration
- 3h 10m
- When
- Every day
- Estimated price
- €65–250
Flights from Berlin Brandenburg Airport to Milano Malpensa Airport via Munich
- Ave. Duration
- 3h 20m
- When
- Every day
- Estimated price
- €65–260
- Website
- ryanair.com
Flights from Berlin Brandenburg Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Monday, Friday, Saturday, and Sunday
- Estimated price
- €40–160
Flights from Berlin Brandenburg Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 45m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €35–190
Flights from Berlin Brandenburg Airport to Il Caravaggio International Airport via Budapest
- Ave. Duration
- 3h 55m
- When
- Thursday and Saturday
- Estimated price
- €35–190
- Website
- swiss.com
Flights from Berlin Brandenburg Airport to Milano Malpensa Airport via Zurich
- Ave. Duration
- 3h 30m
- When
- Every day
- Estimated price
- €65–250
- Website
- condor.com
Flights from Berlin Brandenburg Airport to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 4h
- When
- Every day
- Estimated price
- €50–120
- Website
- eurowings.com
Flights from Berlin Brandenburg Airport to Milan Linate Airport via Stuttgart
- Ave. Duration
- 3h 30m
- When
- Wednesday and Friday
- Estimated price
- €65–240
Flights from Berlin Brandenburg Airport to Il Caravaggio International Airport via Dusseldorf
- Ave. Duration
- 3h 35m
- When
- Monday
- Estimated price
- €110–180
- Phone
- +49 30 311 682904
- Website
- bahn.de
Train from Berlin Hbf to Nürnberg Hbf
- Ave. Duration
- 2h 46m
- Frequency
- Every 30 minutes
- Estimated price
- €28–130
- Website
- https://int.bahn.de/en
Train from Nürnberg Hbf to München Hbf
- Ave. Duration
- 1h 18m
- Frequency
- Every 20 minutes
- Estimated price
- €18–60
- Website
- https://int.bahn.de/en
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 Berlin Hbf to Basel SBB
- Ave. Duration
- 7h 17m
- Frequency
- Every 4 hours
- Estimated price
- €70–190
- Website
- https://int.bahn.de/en
- Phone
- +49 30 2970
- Website
- bahn.de
Train from Nürnberg Hbf to München Hbf
- Ave. Duration
- 2h 52m
- Frequency
- Hourly
- Estimated price
- €26–40
- 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 Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 1h 6m
- 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
- +43 5 1717
- Website
- konzern.oebb.at
Train from Berlin Hbf to Basel SBB
- Ave. Duration
- 10h 28m
- Frequency
- Twice daily
- Estimated price
- €180–260
- Website
- https://konzern.oebb.at/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
- €22–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
- +49 (0) 221 800 20 820
- info@urlaubs-express.de
- Website
- urlaubs-express.de
Car train from Göttingen to München Ost
- Ave. Duration
- 2h 59m
- Frequency
- Once daily
- Estimated price
- €95–120
- Website
- https://urlaubs-express.de/?lang=en
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Berlin, Zentralen Omnibusbahnhof to Milano, Autostazione Lampugnano
- Ave. Duration
- 15h 55m
- Frequency
- Twice daily
- Estimated price
- €40–130
- Website
- https://www.flixbus.co.uk
- Phone
- +48 801 22 33 44
- bilety@sindbad.pl
- Website
- sindbad.pl
Bus from BERLIN, ZOB am Funkturm to SŁUBICE, Port Świecko, Świecko 39
- Ave. Duration
- 2h 5m
- Frequency
- Twice daily
- Estimated price
- €50–65
- Website
- https://www.sindbad.pl/en/home
Bus from SŁUBICE, Port Świecko, Świecko 39 to Milano, Autostazione Lampugnano
- Ave. Duration
- 16h 30m
- Frequency
- Twice a week
- Estimated price
- €80–110
- Website
- https://www.sindbad.pl/en/home
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
Berlin to Milan bus services, operated by FlixBus, arrive at Milano, Autostazione Lampugnano station.
Berlin to Milan train services, operated by Deutsche Bahn Intercity (DB IC), arrive at Nürnberg Hbf station.
Yes, the driving distance between Berlin to Milan is 1011 km. It takes approximately 9h 51m to drive from Berlin to Milan.
Book your Berlin to Milan train tickets online with Omio.
Book your Berlin to Milan bus tickets online with Omio and FlixBus.
There are 13603+ hotels available in Milan.















































