The cheapest and fastest coaches from Milan to Berlin
Cheapest price
£100
Average price
£122
Fastest journey
16 h 8 m
Average duration
16 h 25 m
Buses per day
44
Distance
843 km
The best way to find a cheap coach ticket from Milan to Berlin is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Milan to Berlin will cost around £122 if you buy it on the day, but you can find cheap coach tickets today for only £100.
Of the 44 buses that leave Milan for Berlin 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 25 m but if you time it right, some buses will get you there in just 16 h 8 m .
The slowest buses will take 16 h 55 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 · FlixBus
FlixBus · FlixBus · FlixBus
FlixBus · FlixBus · FlixBus
FlixBus+
FlixTrain
FlixBus · FlixBus
FlixBus+
FlixTrain
FlixBus
FlixBus+
FlixTrain
FlixBus · FlixBus
FlixBus · FlixBusTravel Information
Compare coach, flight and train for Milan to Berlin
Omio recommends booking the train as it is the most popular option from Milan to Berlin among Omio's users. If you are prioritising price take the coach with prices starting from £46. For those with little time consider booking a flight which can get you there in 3h 2m. 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 £46, and a flight costs an average of £54.
Distance: 843 km
Compare bus with
| Coach | Most popular Train | Flight |
|---|---|---|
£84 Average Price Cheapest | £221 Average Price | £265 Average Price |
18h 2m Average total duration 17h 32m Onboard + 30m Additional time* | 13h 28m Average total duration 12h 58m Onboard + 30m Additional time* | 6h 2m Average total duration Fastest 3h 2m Onboard + 3h 0m Additional time* |
0.8 - 2.1kg CO2 emissions | 0.3 - 0.8kg CO2 emissions Lowest | 2.5 - 5.1kg CO2 emissions |
![]() Most popular bus company | ![]() Most popular train company | ![]() Most popular airline |
Direct Options | Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
Live departures
Milan to Berlin bus times
The table below shows live departures for Milan to Berlin coaches for today, Saturday 3 January. You can also manually refresh the results below to see updated coach journeys.
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
FlixBus · FlixBus | 06:20 Milano, Autostazione Lampugnano | 20h45 | 03:05 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus · FlixBus | 06:20 Milano, Autostazione Lampugnano | 21h10 | 03:30 Berlin, Bahnhof Südkreuz | 1 change | |
FlixBus · FlixBus | 06:40 Milano, Autostazione Lampugnano | 21h25 | 04:05 Berlin, Alexanderplatz | 1 change | |
FlixBus · FlixBus | 10:30 Milano, Autostazione Lampugnano | 21h05 | 07:35 Berlin, Bahnhof Südkreuz | 1 change | |
FlixBus · FlixBus | 10:45 Milano, Autostazione Lampugnano | 18h50 | 05:35 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus · FlixBus · FlixBus | 10:45 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 19h45 | 06:30 Berlin, Zentraler Omnibusbahnhof (ZOB) | 2 changes | |
FlixBus · FlixBus · FlixBus | 11:00 Milano, Milan Linate Airport | 19h30 | 06:30 Berlin, Zentraler Omnibusbahnhof (ZOB) | 2 changes | |
FlixBus · FlixBus · FlixBus | 13:00 Milano, Autostazione Lampugnano | 18h45 | 07:45 Berlin, Alexanderplatz | 2 changes | |
FlixBus · FlixBus · FlixBus | 14:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 20h35 | 10:45 Berlin, Bahnhof Südkreuz | 2 changes | |
FlixBus · FlixBus | 14:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 17h50 | 08:00 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus · FlixBus · FlixBus | 14:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 21h00 | 11:10 Berlin, Alexanderplatz | 2 changes | |
FlixBus · FlixBus+ FlixTrain | 14:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 18h43 | 08:53 Berlin Südkreuz station | 2 changes | |
FlixBus · FlixBus+ FlixTrain | 14:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 18h50 | 09:00 Berlin Hbf | 2 changes | |
FlixBus · FlixBus+ FlixTrain | 14:25 Milano, Milan Linate Airport | 18h28 | 08:53 Berlin Südkreuz station | 2 changes | |
FlixBus · FlixBus+ FlixTrain | 14:25 Milano, Milan Linate Airport | 18h35 | 09:00 Berlin Hbf | 2 changes | |
FlixBus · FlixBus · FlixBus | 14:25 Milano, Milan Linate Airport | 20h20 | 10:45 Berlin, Bahnhof Südkreuz | 2 changes | |
FlixBus · FlixBus · FlixBus | 14:25 Milano, Milan Linate Airport | 20h45 | 11:10 Berlin, Alexanderplatz | 2 changes | |
FlixBus · FlixBus+ FlixTrain | 14:25 Milano, Milan Linate Airport | 21h21 | 11:46 Berlin Spandau | 2 changes | |
FlixBus · FlixBus | 14:25 Milano, Milan Linate Airport | 17h35 | 08:00 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus+ FlixTrain | 15:30 Milano, Autostazione Lampugnano | 21h10 | 12:40 Berlin Ostbahnhof | 1 change | |
FlixBus | 15:50 Milano, Autostazione Lampugnano | 16h10 | 08:00 Berlin, Zentraler Omnibusbahnhof (ZOB) | 0 changesdirect | |
FlixBus · FlixBus | 15:50 Milano, Autostazione Lampugnano | 18h55 | 10:45 Berlin, Bahnhof Südkreuz | 1 change | |
FlixBus+ FlixTrain | 15:50 Milano, Autostazione Lampugnano | 19h56 | 11:46 Berlin Spandau | 1 change | |
FlixBus+ FlixTrain | 15:50 Milano, Autostazione Lampugnano | 17h03 | 08:53 Berlin Südkreuz station | 1 change | |
FlixBus · FlixBus | 15:50 Milano, Autostazione Lampugnano | 19h20 | 11:10 Berlin, Alexanderplatz | 1 change | |
FlixBus+ FlixTrain | 15:50 Milano, Autostazione Lampugnano | 17h10 | 09:00 Berlin Hbf | 1 change | |
FlixBus · FlixBus · FlixBus | 17:35 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 19h10 | 12:45 Berlin, Zentraler Omnibusbahnhof (ZOB) | 2 changes | |
FlixBus · FlixBus · FlixBus | 18:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 20h55 | 15:05 Berlin, Zentraler Omnibusbahnhof (ZOB) | 2 changes | |
FlixBus+ FlixTrain | 19:25 Milano, Autostazione Lampugnano | 20h55 | 16:20 Berlin Hbf | 1 change | |
FlixBus+ FlixTrain | 19:25 Milano, Autostazione Lampugnano | 21h12 | 16:37 Berlin Südkreuz station | 1 change | |
FlixBus+ FlixTrain · FlixTrain | 19:25 Milano, Autostazione Lampugnano | 21h05 | 16:30 Berlin, Central Station (Invalidenstraße) | 2 changes | |
FlixBus+ FlixTrain | 19:25 Milano, Autostazione Lampugnano | 20h45 | 16:10 Berlin Spandau | 1 change | |
FlixBus · FlixBus | 20:10 Milano, Autostazione Lampugnano | 16h35 | 12:45 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus · FlixBus | 22:10 Milano, Autostazione Lampugnano | 16h55 | 15:05 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus · FlixBus · FlixBus | 22:10 Milano, Autostazione Lampugnano | 19h40 | 17:50 Berlin, Alexanderplatz | 2 changes | |
FlixBus · FlixBus | 22:10 Milano, Autostazione Lampugnano | 17h45 | 15:55 Berlin, Karolinenstraße (Alt-Tegel) | 1 change | |
FlixBus · FlixBus | 22:10 Milano, Autostazione Lampugnano | 19h30 | 17:40 Berlin, Bahnhof Südkreuz | 1 change | |
FlixBus+ FlixTrain | 22:45 Milano, Autostazione Lampugnano | 21h25 | 20:10 Berlin Spandau | 1 change | |
FlixBus · FlixBus | 22:45 Milano, Autostazione Lampugnano | 20h45 | 19:30 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
| Sunday 4 January | |||||
FlixBus · FlixBus · FlixBus | 00:15 Milano, Autostazione Lampugnano | 21h10 | 21:25 Berlin, Alexanderplatz | 2 changes | |
FlixBus · FlixBus · FlixBus | 00:15 Milano, Autostazione Lampugnano | 21h40 | 21:55 Berlin, Karolinenstraße (Alt-Tegel) | 2 changes | |
FlixBus · FlixBus | 00:15 Milano, Autostazione Lampugnano | 19h15 | 19:30 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
Compare prices and tickets Milan to Berlin by coach, flight or train
Compare coach, flight and train 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.
03 Jan
04 Jan
05 Jan
06 Jan
07 Jan
08 Jan
09 Jan
10 Jan
11 Jan
12 Jan
13 Jan
14 Jan
15 Jan
16 Jan
17 Jan
18 Jan
19 Jan
20 Jan
21 Jan
22 Jan
23 Jan
Journey information
Overview: Bus from Milan to Berlin
Buses from Milan to Berlin run on average 45 times per day, taking around 17h 32m. Cheap bus tickets for this journey start at £46 if you book in advance.
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 56m.
Distance 843 km |
Average bus duration 17h 32m |
Cheapest ticket price £46 |
Buses per day 45 |
Direct buses 1 |
Fastest bus 15h 56m |
First bus 00:15 |
Last bus 23:45 |
Bus providers: FlixBus, Union Ivkoni - Unibus from Milan to BerlinYou can travel by bus between Milan to Berlin with FlixBus, Union Ivkoni - Unibus for as low as £46. When you search for schedules and tickets, Omio will show you the best journey
FlixBus
Union Ivkoni - Unibus
FAQs: Milan to Berlin coach
Find answers to the most common questions about traveling from Milan to Berlin 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 Berlin, this guide helps you travel smarter and with confidence.

Passengers board the coach most frequently from Milano, Autostazione Lampugnano, which is located around 4.7 miles (7.5 km) away from the city centre, and they get off the coach at Berlin, Zentraler Omnibusbahnhof (ZOB), located 6.6 miles (10.6 km) away from the city centre.
To find the cheapest bus tickets for your trip from Milan to Berlin, follow these tips:
Start your search now and compare ticket prices to find the best deal!
popular bus stations
Important Stations and Airports in Milan and Berlin
- 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
- 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
Most popular bus connections from Milan
More options for your journey from Milan to Berlin
Here are some other resources that might have the information you need


