The cheapest and fastest coaches from Milan to Berlin
Cheapest price
£75
Average price
£113
Fastest journey
16 h 10 m
Average duration
17 h 1 m
Buses per day
50
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 £113 if you buy it on the day, but you can find cheap coach tickets today for only £75.
Of the 50 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 17 h 1 m but if you time it right, some buses will get you there in just 16 h 10 m .
The slowest buses will take 17 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.
FlixBus16:5016h10Milano, Autostazione Lampugnano9:00Berlin, Zentraler Omnibusbahnhof (ZOB)£751One-way0 changes
FlixBus+
FlixTrain20:2520h55Milano, Autostazione Lampugnano17:20Berlin Hbf£931One-way1 change
FlixBus+
FlixTrain20:2520h45Milano, Autostazione Lampugnano17:10Berlin Spandau£931One-way1 change
FlixBus · FlixBus21:0021h40Milano, Autostazione Lampugnano18:40Berlin, Bahnhof Südkreuz£931One-way1 change
FlixBus · FlixBus18:3523h00Milano, Autostazione Lampugnano17:35Berlin, Bahnhof Südkreuz£931One-way1 change
FlixBus16:5016h10Milano, Autostazione Lampugnano9:00Berlin, Zentraler Omnibusbahnhof (ZOB)£751One-way0 changes
FlixBus · FlixBus21:1016h35Milano, Autostazione Lampugnano13:45Berlin, Zentraler Omnibusbahnhof (ZOB)£1101One-way1 change
FlixBus · FlixBus23:1017h15Milano, Autostazione Lampugnano16:25Berlin, Zentraler Omnibusbahnhof (ZOB)£1021One-way1 change
FlixBus · FlixBus15:3517h25Milano, Milan Linate Airport9:00Berlin, Zentraler Omnibusbahnhof (ZOB)£1201One-way1 change
FlixBus · FlixBus23:1017h40Milano, Autostazione Lampugnano16:50Berlin, Karolinenstraße (Alt-Tegel)£1011One-way1 change
Travel Information
Compare coach, train and flight for Milan to Berlin
Omio recommends booking the flight 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 £38. For those with little time consider booking a flight which can get you there in 3h 40m. 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 £38, and a flight costs an average of £17.
Distance: 843 km
Compare bus with
| Coach | Most popular Flight | Train |
|---|---|---|
£71 Average Price Cheapest | £169 Average Price | £114 Average Price |
12h 56m Average total duration 12h 26m Onboard + 30m Additional time* | 6h 40m Average total duration Fastest 3h 40m Onboard + 3h 0m Additional time* | 11h 24m Average total duration 10h 54m 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
Milan to Berlin bus times
The table below shows live departures for Milan to Berlin coaches for today, Thursday 2 July. You can also manually refresh the results below to see updated coach journeys.
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
FlixBus · FlixBus · FlixBus | 18:35 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 19h10 | 13:45 Berlin, Zentraler Omnibusbahnhof (ZOB) | 2 changes | |
FlixBus · FlixBus · FlixBus | 18:35 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 23h00 | 17:35 Berlin, Bahnhof Südkreuz | 2 changes | |
FlixBus · FlixBus | 18:35 Milano, Autostazione Lampugnano | 23h00 | 17:35 Berlin, Bahnhof Südkreuz | 1 change | |
FlixBus · FlixBus · FlixBus | 19:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 23h15 | 18:25 Berlin, Bahnhof Südkreuz | 2 changes | |
FlixBus · FlixBus · FlixBus | 19:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 21h40 | 16:50 Berlin, Karolinenstraße (Alt-Tegel) | 2 changes | |
FlixBus · FlixBus · FlixBus | 19:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 21h15 | 16:25 Berlin, Zentraler Omnibusbahnhof (ZOB) | 2 changes | |
FlixBus+ FlixTrain | 20:25 Milano, Autostazione Lampugnano | 20h45 | 17:10 Berlin Spandau | 1 change | |
FlixBus+ FlixTrain | 20:25 Milano, Autostazione Lampugnano | 20h55 | 17:20 Berlin Hbf | 1 change | |
FlixBus+ FlixTrain | 20:25 Milano, Autostazione Lampugnano | 21h12 | 17:37 Berlin Südkreuz station | 1 change | |
FlixBus · FlixBus | 21:00 Milano, Autostazione Lampugnano | 21h40 | 18:40 Berlin, Bahnhof Südkreuz | 1 change | |
FlixBus · FlixBus · FlixBus | 21:00 Milano, Autostazione Lampugnano | 22h40 | 19:40 Berlin, Alexanderplatz | 2 changes | |
FlixBus · FlixBus | 21:10 Milano, Autostazione Lampugnano | 16h35 | 13:45 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus · FlixBus | 23:10 Milano, Autostazione Lampugnano | 17h15 | 16:25 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus · FlixBus | 23:10 Milano, Autostazione Lampugnano | 17h40 | 16:50 Berlin, Karolinenstraße (Alt-Tegel) | 1 change | |
FlixBus · FlixBus | 23:10 Milano, Autostazione Lampugnano | 20h45 | 19:55 Berlin, Bahnhof Südkreuz | 1 change | |
FlixBus · FlixBus | 23:45 Milano, Autostazione Lampugnano | 21h00 | 20:45 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus+ FlixTrain | 23:45 Milano, Autostazione Lampugnano | 20h15 | 20:00 Berlin Hbf | 1 change | |
FlixBus+ FlixTrain | 23:45 Milano, Autostazione Lampugnano | 20h44 | 20:29 Berlin Spandau | 1 change | |
FlixBus+ FlixTrain | 23:45 Milano, Autostazione Lampugnano | 20h08 | 19:53 Berlin Südkreuz station | 1 change | |
| Friday 3 July | |||||
FlixBus · FlixBus · FlixBus | 1:15 Milano, Autostazione Lampugnano | 21h10 | 22:25 Berlin, Alexanderplatz | 2 changes | |
FlixBus · FlixBus | 1:15 Milano, Autostazione Lampugnano | 19h30 | 20:45 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus · FlixBus · FlixBus | 7:00 Milano, Autostazione Lampugnano | 22h05 | 5:05 Berlin, Alexanderplatz | 2 changes | |
FlixBus · FlixBus | 7:15 Milano, Autostazione Lampugnano | 21h15 | 4:30 Berlin, Bahnhof Südkreuz | 1 change | |
FlixBus · FlixBus | 7:15 Milano, Autostazione Lampugnano | 20h50 | 4:05 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus · FlixBus | 11:30 Milano, Autostazione Lampugnano | 20h55 | 8:25 Berlin, Bahnhof Südkreuz | 1 change | |
FlixBus · FlixBus | 11:45 Milano, Autostazione Lampugnano | 19h05 | 6:50 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus · FlixBus · FlixBus | 11:45 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 19h05 | 6:50 Berlin, Zentraler Omnibusbahnhof (ZOB) | 2 changes | |
FlixBus · FlixBus · FlixBus | 12:00 Milano, Milan Linate Airport | 18h50 | 6:50 Berlin, Zentraler Omnibusbahnhof (ZOB) | 2 changes | |
FlixBus · FlixBus | 12:15 Milano, Autostazione Lampugnano | 20h40 | 8:55 Berlin, Bahnhof Südkreuz | 1 change | |
FlixBus · FlixBus · FlixBus | 14:00 Milano, Autostazione Lampugnano | 19h00 | 9:00 Berlin, Alexanderplatz | 2 changes | |
FlixBus · FlixBus | 15:00 Milano, Autostazione Lampugnano | 22h50 | 13:50 Berlin, Karolinenstraße (Alt-Tegel) | 1 change | |
FlixBus · FlixBus | 15:20 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 17h40 | 9:00 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus · FlixBus+ FlixTrain | 15:20 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 21h27 | 12:47 Berlin Spandau | 2 changes | |
FlixBus · FlixBus · FlixBus | 15:20 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 19h15 | 10:35 Berlin, Bahnhof Südkreuz | 2 changes | |
FlixBus · FlixBus+ FlixTrain | 15:20 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 20h59 | 12:19 Berlin Südkreuz station | 2 changes | |
FlixBus · FlixBus+ FlixTrain | 15:20 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 21h10 | 12:30 Berlin Hbf | 2 changes | |
FlixBus · FlixBus | 15:35 Milano, Milan Linate Airport | 17h25 | 9:00 Berlin, Zentraler Omnibusbahnhof (ZOB) | 1 change | |
FlixBus · FlixBus · FlixBus | 15:35 Milano, Milan Linate Airport | 19h00 | 10:35 Berlin, Bahnhof Südkreuz | 2 changes | |
FlixBus · FlixBus+ FlixTrain | 15:35 Milano, Milan Linate Airport | 21h12 | 12:47 Berlin Spandau | 2 changes | |
FlixBus · FlixBus+ FlixTrain | 15:35 Milano, Milan Linate Airport | 20h44 | 12:19 Berlin Südkreuz station | 2 changes | |
FlixBus · FlixBus+ FlixTrain | 15:35 Milano, Milan Linate Airport | 20h55 | 12:30 Berlin Hbf | 2 changes | |
FlixBus | 16:50 Milano, Autostazione Lampugnano | 16h10 | 9:00 Berlin, Zentraler Omnibusbahnhof (ZOB) | 0 changesdirect | |
FlixBus · FlixBus | 16:50 Milano, Autostazione Lampugnano | 17h45 | 10:35 Berlin, Bahnhof Südkreuz | 1 change | |
FlixBus · FlixBus · FlixBus | 16:50 Milano, Autostazione Lampugnano | 21h45 | 14:35 Berlin, Alexanderplatz | 2 changes | |
FlixBus · FlixBus · FlixBus | 16:50 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 22h45 | 15:35 Berlin, Bahnhof Südkreuz | 2 changes | |
FlixBus · FlixBus · FlixBus | 16:50 Milano, Autostazione Lampugnano | 22h15 | 15:05 Berlin, Central Station (Invalidenstraße) | 2 changes | |
FlixBus+ FlixTrain | 16:50 Milano, Autostazione Lampugnano | 19h40 | 12:30 Berlin Hbf | 1 change | |
FlixBus+ FlixTrain | 16:50 Milano, Autostazione Lampugnano | 19h29 | 12:19 Berlin Südkreuz station | 1 change | |
FlixBus+ FlixTrain | 16:50 Milano, Autostazione Lampugnano | 19h57 | 12:47 Berlin Spandau | 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, 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.
02 Jul
03 Jul
04 Jul
05 Jul
06 Jul
07 Jul
08 Jul
09 Jul
10 Jul
11 Jul
12 Jul
13 Jul
14 Jul
15 Jul
16 Jul
17 Jul
18 Jul
19 Jul
20 Jul
21 Jul
22 Jul
Why should you book Milan to Berlin 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 bus, train and flight to ensure you get the best deal for traveling from Milan to Berlin.
Why book with Omio over Wanderu or Trainline?
- Multiple modes of transport: Omio allows you to compare travel options including bus, train and flight to find the ideal travel option from Milan to Berlin.
Journey information
Overview: Bus from Milan to Berlin
Buses from Milan to Berlin run on average 44 times per day, taking around 12h 26m. Cheap bus tickets for this journey start at £38 but you can travel from only £17 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 16h 8m.
Distance 843 km |
Average bus duration 12h 26m |
Cheapest ticket price £38 |
Buses per day 44 |
Direct buses 1 |
Fastest bus 16h 8m |
First bus 0:15 |
Last bus 23:45 |
Cheapest Month Dec |
Cheapest Day Sat |
High Season Jul - Sept |
Low Season Jan - Mar |
Busiest Day Wed |
Least Busy Day Sun |
Best time to book 49 days |
Bus providers: FlixBus from Milan to BerlinYou can travel by bus between Milan to Berlin with FlixBus for as low as £17. When you search for schedules and tickets, Omio will show you the best journey
FlixBus
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.

- 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 Milan and Berlin
Most Milan to Berlin buses use the Milano, Autostazione Lampugnano to Berlin, Zentraler Omnibusbahnhof (ZOB) station pair, with some services arriving at Berlin, Bahnhof Südkreuz. Use this guide to compare Milan and Berlin bus stations on this route, check city-centre transport, alongside checking practicalities like bus station facilities and services.
Which Milan station do buses to Berlin leave from?
Getting to Milano, Autostazione Lampugnano from Milan city centre
Milano, Autostazione Lampugnano is 5 km from Milan city centre. Public transport options include:
Milano, Autostazione Lampugnano bus station facilities and services
Milano, Autostazione Lampugnano has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC and Ticket Office.
Food and drink
Food options include: Cafeteria Lampugnano (in the station), Trattoria Milano (0.5 km), Pizza Express (0.7 km).
Wi-Fi and ATMs
Free Wi-Fi. ATMs are located near the main entrance.
Tickets and information
Ticket office support is available at Milano, Autostazione Lampugnano.
Parking, taxis and toilets
Available at Milano, Autostazione Lampugnano: Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Milano, Autostazione Lampugnano: Elevators, ramps.
Getting to Milano, San Donato - Settore B (Viale Giuseppe Impastato) from Milan city centre
Milano, San Donato - Settore B (Viale Giuseppe Impastato) is 6 km from Milan city centre. Public transport options include:
Milano, San Donato - Settore B (Viale Giuseppe Impastato) bus station facilities and services
Milano, San Donato - Settore B (Viale Giuseppe Impastato) has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC and Ticket Office.
Food and drink
Food options include: Cafeteria Italiana (in the station), Fast Food Express (in the station), Trattoria Milano (0.5 km).
Wi-Fi and ATMs
Free Wi-Fi. ATMs are located near the main entrance for cash withdrawals.
Tickets and information
Ticket office support is available at Milano, San Donato - Settore B (Viale Giuseppe Impastato).
Parking, taxis and toilets
Available at Milano, San Donato - Settore B (Viale Giuseppe Impastato): Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Milano, San Donato - Settore B (Viale Giuseppe Impastato): Elevators, ramps.
Getting to Milano, Aeroporto di Milano Linate from Milan city centre
Which Berlin station do buses from Milan arrive at?
Getting to Berlin, Zentraler Omnibusbahnhof (ZOB) from Berlin city centre
Berlin, Zentraler Omnibusbahnhof (ZOB) is 9 km from Berlin city centre. Public transport options include:
Berlin, Zentraler Omnibusbahnhof (ZOB) bus station facilities and services
Berlin, Zentraler Omnibusbahnhof (ZOB) has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC and Ticket Office.
Food and drink
Food options include: Cafeteria Berlin (in the station), Schnitzel Express (0.5 km), Currywurst Haus (0.7 km).
Wi-Fi and ATMs
Free Wi-Fi. ATMs are located near the main entrance and inside the waiting area.
Tickets and information
Ticket office support is available at Berlin, Zentraler Omnibusbahnhof (ZOB).
Parking, taxis and toilets
Available at Berlin, Zentraler Omnibusbahnhof (ZOB): Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Berlin, Zentraler Omnibusbahnhof (ZOB): Elevators, ramps.
Getting to Berlin, Bahnhof Südkreuz from Berlin city centre
Berlin, Bahnhof Südkreuz is 6 km from Berlin city centre. Public transport options include:
Berlin, Bahnhof Südkreuz bus station facilities and services
Berlin, Bahnhof Südkreuz has practical services for this route, including Wifi, Parking, ATM, Taxis, Accessibility, WC and Ticket Office.
Wi-Fi and ATMs
Free Wi-Fi. ATMs are located near the main entrance.
Tickets and information
Ticket office support is available at Berlin, Bahnhof Südkreuz.
Parking, taxis and toilets
Available at Berlin, Bahnhof Südkreuz: Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Berlin, Bahnhof Südkreuz: Elevators, ramps.
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


