The cheapest and fastest coaches from Berlin to Milan
Cheapest price
£68
Average price
£84
Fastest journey
15 h 55 m
Average duration
17 h 53 m
Buses per day
18
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 £84 if you buy it on the day, but you can find cheap coach tickets today for only £68.
Of the 18 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 17 h 53 m but if you time it right, some buses will get you there in just 15 h 55 m .
The slowest buses will take 19 h 40 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
FlixBus
FlixBus · FlixBus
FlixBus · FlixBus
FlixBus · FlixBus
FlixBus · FlixBusTravel Information
Compare coach, train 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 £39. For those with little time consider booking a flight which can get you there in 3h 18m. 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 £39, and a flight costs an average of £18.
Distance: 843 km
Compare bus with
| Coach | Most popular Flight | Train |
|---|---|---|
£61 Average Price Cheapest | £132 Average Price | £88 Average Price |
10h 14m Average total duration 9h 44m Onboard + 30m Additional time* | 6h 18m Average total duration Fastest 3h 18m Onboard + 3h 0m Additional time* | 14h 41m Average total duration 14h 11m 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, Monday 16 February. You can also manually refresh the results below to see updated coach journeys.
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
FlixBus · FlixBus · FlixBus | 08:20 Berlin, Alexanderplatz | 21h10 | 05:30 Milano, Autostazione Lampugnano | 2 changes | |
FlixTrain · FlixTrain+ FlixBus | 08:57 Berlin, Central Station (Invalidenstraße) | 21h13 | 06:10 Milano, Autostazione Lampugnano | 2 changes | |
FlixBus · FlixBus | 09:00 Berlin, Zentraler Omnibusbahnhof (ZOB) | 16h50 | 01:50 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus · FlixBus | 09:00 Berlin, Zentraler Omnibusbahnhof (ZOB) | 24h05 | 09:05 Milano, Milan Linate Airport | 2 changes | |
FlixBus · FlixBus · FlixBus | 09:00 Berlin, Zentraler Omnibusbahnhof (ZOB) | 22h30 | 07:30 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixTrain+ FlixBus · FlixBus | 10:40 Berlin Spandau | 17h10 | 03:50 Milano, Autostazione Lampugnano | 2 changes | |
FlixTrain+ FlixBus · FlixBus | 10:57 Berlin Hbf | 16h53 | 03:50 Milano, Autostazione Lampugnano | 2 changes | |
FlixTrain+ FlixBus · FlixBus | 11:04 Berlin Südkreuz station | 16h46 | 03:50 Milano, Autostazione Lampugnano | 2 changes | |
FlixTrain+ FlixBus | 11:22 Berlin Südkreuz station | 22h53 | 10:15 Milano, Autostazione Lampugnano | 1 change | |
FlixTrain+ FlixBus | 11:38 Berlin Hbf | 22h37 | 10:15 Milano, Autostazione Lampugnano | 1 change | |
FlixTrain+ FlixBus | 11:48 Berlin Spandau | 22h27 | 10:15 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 12:00 Berlin, Zentraler Omnibusbahnhof (ZOB) | 20h10 | 08:10 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 12:15 Berlin, Bahnhof Südkreuz | 19h55 | 08:10 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus · FlixBus | 12:30 Berlin, Alexanderplatz | 20h50 | 09:20 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixBus · FlixBus · FlixBus | 12:30 Berlin, Alexanderplatz | 19h40 | 08:10 Milano, Autostazione Lampugnano | 2 changes | |
FlixBus · FlixBus · FlixBus | 12:30 Berlin, Alexanderplatz | 20h35 | 09:05 Milano, Milan Linate Airport | 2 changes | |
FlixBus · FlixBus · FlixBus | 13:00 Berlin, Bahnhof Südkreuz | 20h20 | 09:20 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixBus · FlixBus · FlixBus | 13:00 Berlin, Bahnhof Südkreuz | 20h05 | 09:05 Milano, Milan Linate Airport | 2 changes | |
FlixBus · FlixBus | 15:30 Berlin, Alexanderplatz | 20h25 | 11:55 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 15:55 Berlin, Karolinenstraße (Alt-Tegel) | 22h35 | 14:30 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 16:00 Berlin, Bahnhof Südkreuz | 19h55 | 11:55 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 16:20 Berlin, Zentraler Omnibusbahnhof (ZOB) | 17h00 | 09:20 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 16:20 Berlin, Zentraler Omnibusbahnhof (ZOB) | 18h35 | 10:55 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 change | |
FlixBus · FlixBus · FlixBus | 18:10 Berlin, Alexanderplatz | 19h35 | 13:45 Milano, Autostazione Lampugnano | 2 changes | |
FlixTrain+ FlixBus | 18:39 Berlin Spandau | 17h16 | 11:55 Milano, Autostazione Lampugnano | 1 change | |
FlixTrain+ FlixBus · FlixBus | 18:39 Berlin Spandau | 21h31 | 16:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixTrain+ FlixBus | 18:57 Berlin Hbf | 16h58 | 11:55 Milano, Autostazione Lampugnano | 1 change | |
FlixTrain+ FlixBus · FlixBus | 18:57 Berlin Hbf | 21h13 | 16:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixTrain+ FlixBus | 19:03 Berlin Südkreuz station | 16h52 | 11:55 Milano, Autostazione Lampugnano | 1 change | |
FlixTrain+ FlixBus · FlixBus | 19:03 Berlin Südkreuz station | 21h07 | 16:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixBus | 20:00 Berlin, Zentraler Omnibusbahnhof (ZOB) | 15h55 | 11:55 Milano, Autostazione Lampugnano | 0 changesdirect | |
FlixBus · FlixBus | 20:00 Berlin, Zentraler Omnibusbahnhof (ZOB) | 20h10 | 16:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 change | |
FlixBus · FlixBus | 21:15 Berlin, Bahnhof Südkreuz | 19h35 | 16:50 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus · FlixBus | 22:30 Berlin, Zentraler Omnibusbahnhof (ZOB) | 21h40 | 20:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
FlixBus · FlixBus · FlixBus | 22:30 Berlin, Zentraler Omnibusbahnhof (ZOB) | 21h25 | 19:55 Milano, Milan Linate Airport | 2 changes | |
FlixBus · FlixBus | 01:00 Berlin, Bahnhof Südkreuz | 20h00 | 21:00 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 01:20 Berlin, Zentraler Omnibusbahnhof (ZOB) | 19h40 | 21:00 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 01:25 Berlin, Zentraler Omnibusbahnhof (ZOB) | 21h40 | 23:05 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 02:05 Berlin, Alexanderplatz | 21h00 | 23:05 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 02:30 Berlin, Puschkinallee (S-Treptower Park) | 20h35 | 23:05 Milano, Autostazione Lampugnano | 1 change | |
FlixBus · FlixBus | 07:00 Berlin, Zentraler Omnibusbahnhof (ZOB) | 18h15 | 01:15 Milano, Autostazione Lampugnano | 1 change | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
Compare prices and tickets Berlin to Milan by coach, train or flight
Compare coach, train 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.
16 Feb
17 Feb
18 Feb
19 Feb
20 Feb
21 Feb
22 Feb
23 Feb
24 Feb
25 Feb
26 Feb
27 Feb
28 Feb
01 Mar
02 Mar
03 Mar
04 Mar
05 Mar
06 Mar
07 Mar
08 Mar
Journey information
Overview: Bus from Berlin to Milan
Buses from Berlin to Milan run on average 44 times per day, taking around 9h 44m. Cheap bus tickets for this journey start at £39 but you can travel from only £18 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 44m |
Cheapest ticket price £39 |
Buses per day 44 |
Direct buses 1 |
Fastest bus 15h 55m |
First bus 00:15 |
Last bus 23:45 |
Bus providers: FlixBus, KM Malta Airlines, Air Dolomiti from Berlin to MilanYou can travel by bus between Berlin to Milan with FlixBus, KM Malta Airlines, Air Dolomiti for as low as £18. When you search for schedules and tickets, Omio will show you the best journey
FlixBus
Air Dolomiti
KM Malta Airlines
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.
- KM Malta Airlines
- Assistance available for passengers with reduced mobility, must be requested at least 48h before departure
- Air Dolomiti
- Assistance available for passengers with reduced mobility, must be requested at least 48h before departure
- 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.
- KM Malta Airlines
- Free cancellation within 24h of booking if flight is more than 7 days away
- Air Dolomiti
- Free cancellation within 24 hours of booking if flight is more than 7 days away
- FlixBus
- One carry-on bag up to 7kg (42x30x18 cm) and one checked bag up to 20kg (80x50x30 cm).
- KM Malta Airlines
- 1 small personal item (40x20x25 cm) included
- Air Dolomiti
- 1 carry-on bag (8kg, 55x40x23cm) and 1 personal item (40x30x10cm)
- FlixBus
- Additional luggage can be purchased for a fee.
- KM Malta Airlines
- Additional cabin bag (55x40x20 cm) and checked baggage available for purchase
- Air Dolomiti
- Up to 23kg per piece, fees apply
- FlixBus
- Small pets in carriers allowed
- guide dogs travel for free.
- KM Malta Airlines
- Small pets in cabin allowed, max 8kg including carrier
- Air Dolomiti
- Small pets in cabin allowed, max 8kg including carrier, must be booked in advance
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
Most popular bus connections from Berlin
More options for your journey from Berlin to Milan
Here are some other resources that might have the information you need



