The cheapest and fastest coaches from Berlin to Milan
Cheapest price
108S$
Average price
128S$
Fastest journey
15 h 50 m
Average duration
16 h 17 m
Buses per day
31
Distance
843 km
The best way to find a cheap coach ticket from Berlin to Milan is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Berlin to Milan will cost around 128S$ if you buy it on the day, but you can find cheap coach tickets today for only 108S$.
Of the 31 buses that leave Berlin for Milan every day 1 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
These direct buses cover the 843 km distance in an average of 16 h 17 m but if you time it right, some buses will get you there in just 15 h 50 m .
The slowest buses will take 16 h 50 m and usually involve a change or two along the way, but you might be able to save a few pennies if you’re on a budget.
FlixBus · FlixBus · FlixBus11:20 PM21h35Berlin, Zentraler Omnibusbahnhof (ZOB)8:55 PMMilano, Milan Linate Airport108 S$1One-way2 changes
FlixBus · FlixBus1:15 PM19h45Berlin, Bahnhof Südkreuz9:00 AMMilano, Autostazione Lampugnano110 S$1One-way1 change
FlixBus · FlixBus · FlixBus9:20 AM21h10Berlin, Alexanderplatz6:30 AMMilano, Autostazione Lampugnano111 S$1One-way2 changes
FlixBus · FlixBus · FlixBus11:20 PM17h50Berlin, Zentraler Omnibusbahnhof (ZOB)5:10 PMMilano, San Donato - Settore B (Viale Giuseppe Impastato)111 S$1One-way2 changes
FlixBus · FlixBus · FlixBus7:40 PM19h05Berlin, Alexanderplatz2:45 PMMilano, Autostazione Lampugnano111 S$1One-way2 changes
FlixBus · FlixBus5:20 PM15h50Berlin, Zentraler Omnibusbahnhof (ZOB)9:10 AMMilano, Autostazione Lampugnano118 S$1One-way1 change
FlixBus9:00 PM15h55Berlin, Zentraler Omnibusbahnhof (ZOB)12:55 PMMilano, Autostazione Lampugnano112 S$1One-way0 changes
FlixBus · FlixBus2:20 PM16h10Berlin, Zentraler Omnibusbahnhof (ZOB)6:30 AMMilano, Autostazione Lampugnano122 S$1One-way1 change
FlixBus · FlixBus1:50 PM16h40Berlin, Karolinenstraße (Alt-Tegel)6:30 AMMilano, Autostazione Lampugnano122 S$1One-way1 change
FlixBus · FlixBus10:00 AM16h50Berlin, Zentraler Omnibusbahnhof (ZOB)2:50 AMMilano, Autostazione Lampugnano127 S$1One-way1 change
Travel Information
Compare train, coach and flight for Berlin to Milan
Omio recommends booking the flight as it is the most popular option from Berlin to Milan among Omio's users. If you are prioritising price take the coach with prices starting from 50S$. For those with little time consider booking a flight which can get you there in 3h 12m. In case you are seeking to minimise your carbon footprint the train is your best bet as it emits only 0.3 - 0.8kg. The ticket price range depends on the travel mode: a coach costs an average of 50S$, and a flight costs an average of 35S$.
Distance: 843 km
Compare bus with
| Coach | Most popular Flight | Train |
|---|---|---|
76S$ Average Price Cheapest | 183S$ Average Price | 103S$ Average Price |
9h 33m Average total duration 9h 3m Onboard + 30m Additional time* | 6h 12m Average total duration Fastest 3h 12m Onboard + 3h 0m Additional time* | 14h 16m Average total duration 13h 46m Onboard + 30m Additional time* |
0.8 - 2.1kg CO2 emissions | 2.5 - 5.1kg CO2 emissions | 0.3 - 0.8kg CO2 emissions Lowest |
![]() Most popular bus company | ![]() Most popular airline | ![]() Most popular train company |
Direct Options | Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
Live departures
Berlin to Milan bus times
The table below shows live departures for Berlin to Milan coaches for today, Saturday, 13 June. You can also manually refresh the results below to see updated coach journeys.
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
FlixBus · FlixBus | 8:00 AM Berlin, Zentraler Omnibusbahnhof (ZOB) | 18h15 | 2:15 AM Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus · FlixBus | 8:30 AM Berlin, Alexanderplatz | 18h20 | 2:50 AM Milano, Autostazione Lampugnano | 2 changes | |
FlixBus · FlixBus · FlixBus | 9:20 AM Berlin, Alexanderplatz | 21h10 | 6:30 AM Milano, Autostazione Lampugnano | 2 changes | |
FlixTrain+ FlixBus · FlixBus | 9:57 AM Berlin Hbf | 22h33 | 8:30 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixTrain · FlixTrain+ FlixBus | 9:57 AM Berlin, Central Station (Invalidenstraße) | 21h13 | 7:10 AM Milano, Autostazione Lampugnano | 2 changes | |
FlixBus · FlixBus | 10:00 AM Berlin, Zentraler Omnibusbahnhof (ZOB) | 16h50 | 2:50 AM Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus · FlixBus | 10:00 AM Berlin, Zentraler Omnibusbahnhof (ZOB) | 22h30 | 8:30 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixTrain+ FlixBus · FlixBus | 10:04 AM Berlin Südkreuz station | 22h26 | 8:30 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixTrain+ FlixBus | 11:40 AM Berlin Spandau | 19h30 | 7:10 AM Milano, Autostazione Lampugnano | 1 change | |
FlixTrain+ FlixBus | 11:57 AM Berlin Hbf | 19h13 | 7:10 AM Milano, Autostazione Lampugnano | 1 change | |
FlixTrain+ FlixBus | 12:04 PM Berlin Südkreuz station | 19h06 | 7:10 AM Milano, Autostazione Lampugnano | 1 change | |
FlixTrain+ FlixBus | 12:22 PM Berlin Südkreuz station | 22h53 | 11:15 AM Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 12:30 PM Berlin, Bahnhof Südkreuz | 18h00 | 6:30 AM Milano, Autostazione Lampugnano | 1 change | |
FlixTrain+ FlixBus | 12:40 PM Berlin Hbf | 22h35 | 11:15 AM Milano, Autostazione Lampugnano | 1 change | |
FlixTrain+ FlixBus | 12:49 PM Berlin Spandau | 22h26 | 11:15 AM Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 1:15 PM Berlin, Bahnhof Südkreuz | 19h45 | 9:00 AM Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 1:50 PM Berlin, Karolinenstraße (Alt-Tegel) | 16h40 | 6:30 AM Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus · FlixBus | 1:50 PM Berlin, Karolinenstraße (Alt-Tegel) | 20h35 | 10:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixBus · FlixBus · FlixBus | 1:50 PM Berlin, Karolinenstraße (Alt-Tegel) | 20h25 | 10:15 AM Milano, Milan Linate Airport | 2 changes | |
FlixBus · FlixBus | 2:20 PM Berlin, Zentraler Omnibusbahnhof (ZOB) | 16h10 | 6:30 AM Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus · FlixBus | 2:20 PM Berlin, Bahnhof Südkreuz | 20h10 | 10:30 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixBus · FlixBus · FlixBus | 2:20 PM Berlin, Bahnhof Südkreuz | 19h55 | 10:15 AM Milano, Milan Linate Airport | 2 changes | |
FlixBus · FlixBus · FlixBus | 2:20 PM Berlin, Zentraler Omnibusbahnhof (ZOB) | 19h55 | 10:15 AM Milano, Milan Linate Airport | 2 changes | |
FlixBus · FlixBus · FlixBus | 2:20 PM Berlin, Zentraler Omnibusbahnhof (ZOB) | 20h05 | 10:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixBus · FlixBus · FlixBus | 3:15 PM Berlin, Alexanderplatz | 21h35 | 12:50 PM Milano, Autostazione Lampugnano | 2 changes | |
FlixBus · FlixBus · FlixBus | 4:05 PM Berlin, Central Station (Invalidenstraße) | 20h50 | 12:55 PM Milano, Autostazione Lampugnano | 2 changes | |
FlixBus · FlixBus | 4:50 PM Berlin, Karolinenstraße (Alt-Tegel) | 22h40 | 3:30 PM Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 5:15 PM Berlin, Alexanderplatz | 19h40 | 12:55 PM Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 5:20 PM Berlin, Zentraler Omnibusbahnhof (ZOB) | 15h50 | 9:10 AM Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 5:20 PM Berlin, Zentraler Omnibusbahnhof (ZOB) | 18h35 | 11:55 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 change | |
FlixBus · FlixBus | 5:45 PM Berlin, Bahnhof Südkreuz | 19h10 | 12:55 PM Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus · FlixBus | 7:10 PM Berlin, Alexanderplatz | 19h35 | 2:45 PM Milano, Autostazione Lampugnano | 2 changes | |
FlixTrain+ FlixBus · FlixBus | 7:39 PM Berlin Spandau | 21h31 | 5:10 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixTrain+ FlixBus | 7:39 PM Berlin Spandau | 17h16 | 12:55 PM Milano, Autostazione Lampugnano | 1 change | |
FlixTrain+ FlixBus | 7:57 PM Berlin Hbf | 16h58 | 12:55 PM Milano, Autostazione Lampugnano | 1 change | |
FlixTrain+ FlixBus · FlixBus | 7:57 PM Berlin Hbf | 21h13 | 5:10 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixTrain+ FlixBus | 8:03 PM Berlin Südkreuz station | 16h52 | 12:55 PM Milano, Autostazione Lampugnano | 1 change | |
FlixTrain+ FlixBus · FlixBus | 8:03 PM Berlin Südkreuz station | 21h07 | 5:10 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixBus · FlixBus | 9:00 PM Berlin, Bahnhof Südkreuz | 19h50 | 4:50 PM Milano, Autostazione Lampugnano | 1 change | |
FlixBus | 9:00 PM Berlin, Zentraler Omnibusbahnhof (ZOB) | 15h55 | 12:55 PM Milano, Autostazione Lampugnano | 0 changesdirect | |
FlixBus · FlixBus | 10:00 PM Berlin, Bahnhof Südkreuz | 22h15 | 8:15 PM Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus · FlixBus | 11:20 PM Berlin, Zentraler Omnibusbahnhof (ZOB) | 21h35 | 8:55 PM Milano, Milan Linate Airport | 2 changes | |
FlixBus · FlixBus · FlixBus | 11:20 PM Berlin, Zentraler Omnibusbahnhof (ZOB) | 17h50 | 5:10 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
| Sunday, 14 June | |||||
FlixBus · FlixBus | 2:00 AM Berlin, Bahnhof Südkreuz | 20h00 | 10:00 PM Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 2:20 AM Berlin, Zentraler Omnibusbahnhof (ZOB) | 19h40 | 10:00 PM Milano, Autostazione Lampugnano | 1 change | |
Find all the dates and times for this journey
Compare prices and tickets Berlin to Milan by train, coach or flight
Compare train, coach and flight prices over the next three weeks. See the best deals at a glance, find the lowest fares, and choose the option that fits your budget.
13 Jun
14 Jun
15 Jun
16 Jun
17 Jun
18 Jun
19 Jun
20 Jun
21 Jun
22 Jun
23 Jun
24 Jun
25 Jun
26 Jun
27 Jun
28 Jun
29 Jun
30 Jun
01 Jul
02 Jul
03 Jul
Why should you book Berlin to Milan coaches with Omio?
Why book with Omio vs FlixBus?
- Designed for International Travelers: Omio is in your language including 24/7 customer service and offers multiple payment options, including PayPal, credit cards, and bank transfer, in your preferred currency.
- Compare all your options: Omio allows you to compare FlixBus with all available travel options, which are train, bus and flight to ensure you get the best deal for traveling from Berlin to Milan.
Why book with Omio over Wanderu or Trainline?
- Multiple modes of transport: Omio allows you to compare travel options including train, bus and flight to find the ideal travel option from Berlin to Milan.
Journey information
Overview: Bus from Berlin to Milan
Buses from Berlin to Milan run on average 44 times per day, taking around 9h 3m. Cheap bus tickets for this journey start at 50S$ but you can travel from only 35S$ by flight.
There are 1 coaches per day. The earliest coach runs at 00:15, the last at 23:45. The fastest coach covers the 843 km distance in 15h 55m.
Distance 843 km |
Average bus duration 9h 3m |
Cheapest ticket price 50S$ |
Buses per day 44 |
Direct buses 1 |
Fastest bus 15h 55m |
First bus 12:15 AM |
Last bus 11:45 PM |
Cheapest Month May |
Cheapest Day Tue |
High Season Jul - Sept |
Low Season Jan - Mar |
Busiest Day Tue |
Least Busy Day Sun |
Best time to book 84 days |
Bus providers: FlixBus from Berlin to MilanYou can travel by bus between Berlin to Milan with FlixBus for as low as 35S$. When you search for schedules and tickets, Omio will show you the best journey
FlixBus
FAQs: Berlin to Milan coach
Find answers to the most common questions about traveling from Berlin to Milan by coach. From journey times and ticket prices to direct connections, first and last departures, and even whether the route is scenic, our FAQs cover everything you need to plan your trip. Whether you’re looking for the fastest coach, the cheapest option, or tips for making the most of your visit at Milan, this guide helps you travel smarter and with confidence.

- FlixBus
- Assistance
- Priority boarding
- Wheelchair-accessible buses.
- FlixBus
- You can cancel your ticket up to 15 minutes before departure and receive a voucher for future travel. Refund requests for delays over 120 minutes are possible.
- FlixBus
- One carry-on bag up to 7kg (42x30x18 cm) and one checked bag up to 20kg (80x50x30 cm).
- FlixBus
- Additional luggage can be purchased for a fee.
- FlixBus
- Small pets in carriers allowed
- guide dogs travel for free.
popular bus stations
Important Stations and Airports in Berlin and Milan
- 06:00-22:00
- Free Wi-Fi
- Cafeteria Berlin (in the station)
- Schnitzel Express (0.5 km)
- Currywurst Haus (0.7 km).
- Available outside the main entrance.
- Elevators, ramps
- Available in the station.
- Bus: M49, 139 Metro: U2 Train: S41, S42, S46
- 06:00-22:00
- Free Wi-Fi
- Available outside the main entrance.
- Elevators, ramps
- Available in the station.
- Bus: M46, 106, 204 Train: S2, S25, S41, S42
- 06:00-23:00
- Free Wi-Fi
- Cafeteria Lampugnano (in the station)
- Trattoria Milano (0.5 km)
- Pizza Express (0.7 km).
- Available outside the station.
- Elevators, ramps
- Available in the station.
- Metro: M1 Bus: 68, 78, 80
- 06:00-22:00
- Free Wi-Fi
- Cafeteria Italiana (in the station)
- Fast Food Express (in the station)
- Trattoria Milano (0.5 km).
- Available outside the station.
- Elevators, ramps
- Available in the station.
- Bus: 121, 132 Metro: M3
More options for your journey from Berlin to Milan
Here are some other resources that might have the information you need



