The average train between Berlin and Milan takes 14h 28m and the fastest train takes 12h 34m. The train service runs several times per day from Berlin to Milan. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run 5 times a day between Berlin and Milan. The earliest departure is at 12:08 AM at night, and the last departure from Berlin is at 5:27 PM which arrives into Milan at 11:17 AM. All services require a transfer at Frankfurt and take an average of 14h 28m. The schedules shown below are for the next available departures.



13h 9m • 3 changes


12h 36m • 3 changes


12h 34m • 3 changes


12h 34m • 3 changes


13h 9m • 3 changes


12h 36m • 3 changes


12h 34m • 3 changes


12h 34m • 3 changes


13h 9m • 3 changes


12h 36m • 3 changes


12h 34m • 3 changes


12h 34m • 3 changes


13h 9m • 3 changes


12h 36m • 3 changes


12h 34m • 3 changes


12h 34m • 3 changesWant to know about travelling from Berlin to Milan? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from Berlin to Milan. However, there are services departing from Berlin station and arriving at Milan station via Frankfurt. The journey, including transfers, takes approximately 14h 28m.
Berlin to Milan train services, operated by Deutsche Bahn Intercity (DB IC), depart from Berlin Hbf station.
Berlin to Milan train services, operated by Deutsche Bahn Intercity (DB IC), arrive at Milano Centrale station.
Book your Berlin to Milan train tickets online with Deutsche Bahn Intercity (DB IC) and Swiss Federal Railways (SBB CFF FFS).
The distance between Berlin and Milan is 842.9 km. The road distance is 1,170 km.
You can take a train from Berlin Hbf to Milano Centrale via Frankfurt, Basel SBB, and Lugano in around 13h 42m.