Cheapest price
£68
Average price
£104
Fastest journey
14 h 25 m
Average duration
15 h 51 m
Buses per day
37
Distance
787 km
The best way to find a cheap coach ticket from Budapest to Milan is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Budapest to Milan will cost around £104 if you buy it on the day, but you can find cheap coach tickets today for only £68.
Of the 37 buses that leave Budapest for Milan every day 2 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
These direct buses cover the 787 km distance in an average of 15 h 51 m but if you time it right, some buses will get you there in just 14 h 25 m .
The slowest buses will take 17 h 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.
Omio recommends booking the flight as it is the most popular option from Budapest to Milan among Omio's users. If you are prioritising price take the coach with prices starting from £51. For those with little time consider booking a flight which can get you there in 2h 41m. In case you are seeking to minimise your carbon footprint the coach is your best bet as it emits only 0.8 - 2.0kg. The ticket price range depends on the travel mode: a coach costs an average of £51, and a flight costs an average of £22.
Distance: 787 km
Coach | Most popular Flight |
---|---|
£69 Average Price Cheapest | £73 Average Price |
19h 8m Average total duration 18h 38m Onboard + 30m Additional time* | 5h 41m Average total duration Fastest 2h 41m Onboard + 3h 0m Additional time* |
0.8 - 2.0kg CO2 emissions Lowest | 2.4 - 4.7kg CO2 emissions |
![]() Most popular bus company | ![]() Most popular airline |
Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
Provider | Departs | Duration | Arrives | Changes | Tickets |
---|---|---|---|---|---|
![]() | 03:40 Budapest, Liszt Ferenc Nemzetközi Repülőtér | 24h00 | 03:40 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
![]() | 04:45 Budapest, Népliget Autóbusz-Pályaudvar | 14h25 | 19:10 Milano, Autostazione Lampugnano | 0 changesdirect | |
![]() | 05:40 Budapest, Liszt Ferenc Nemzetközi Repülőtér | 21h50 | 03:30 Milano, Autostazione Lampugnano | 1 change | |
![]() | 05:40 Budapest, Liszt Ferenc Nemzetközi Repülőtér | 23h45 | 05:25 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
![]() | 07:25 Budapest, Népliget Autóbusz-Pályaudvar | 20h15 | 03:40 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
![]() | 07:45 Budapest, Kelenföld Vasútállomás | 19h45 | 03:30 Milano, Autostazione Lampugnano | 1 change | |
![]() | 07:45 Budapest, Kelenföld Vasútállomás | 19h55 | 03:40 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
![]() | 08:20 Budapest, Liszt Ferenc Nemzetközi Repülőtér | 24h00 | 08:20 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
![]() | 09:55 Budapest, Liszt Ferenc Nemzetközi Repülőtér | 18h40 | 04:35 Milano, Autostazione Lampugnano | 2 changes | |
![]() | 10:30 Budapest, Mexikói Út M | 17h00 | 03:30 Milano, Autostazione Lampugnano | 1 change | |
![]() | 10:30 Budapest, Mexikói Út M | 20h00 | 06:30 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
![]() | 10:30 Budapest, Népliget Autóbusz-Pályaudvar | 20h00 | 06:30 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
![]() | 10:55 Budapest, Kelenföld Vasútállomás | 17h40 | 04:35 Milano, Autostazione Lampugnano | 1 change | |
![]() | 10:55 Budapest, Kelenföld Vasútállomás | 19h35 | 06:30 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
![]() | 11:00 Budapest, Népliget Autóbusz-Pályaudvar | 16h30 | 03:30 Milano, Autostazione Lampugnano | 1 change | |
![]() | 11:05 Budapest, Kelenföld Vasútállomás | 20h05 | 07:10 Milano, Autostazione Lampugnano | 2 changes | |
![]() | 11:05 Budapest, Kelenföld Vasútállomás | 21h00 | 08:05 Milano, Milan Linate Airport | 2 changes | |
![]() | 11:45 Budapest, Népliget Autóbusz-Pályaudvar | 20h20 | 08:05 Milano, Milan Linate Airport | 1 change | |
![]() | 11:45 Budapest, Népliget Autóbusz-Pályaudvar | 20h35 | 08:20 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 change | |
![]() | 11:45 Budapest, Népliget Autóbusz-Pályaudvar | 19h25 | 07:10 Milano, Autostazione Lampugnano | 1 change | |
![]() | 13:35 Budapest, Kelenföld Vasútállomás | 20h30 | 10:05 Milano, Autostazione Lampugnano | 1 change | |
![]() | 14:15 Budapest, Mexikói Út M | 19h40 | 09:55 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
![]() | 14:15 Budapest, Liszt Ferenc Nemzetközi Repülőtér | 19h40 | 09:55 Milano, Autostazione Lampugnano | 2 changes | |
![]() | 14:15 Budapest, Mexikói Út M | 17h10 | 07:25 Milano, Autostazione Lampugnano | 1 change | |
![]() | 15:10 Budapest, Liszt Ferenc Nemzetközi Repülőtér | 18h55 | 10:05 Milano, Autostazione Lampugnano | 1 change | |
![]() | 17:00 Budapest, Népliget Autóbusz-Pályaudvar | 16h55 | 09:55 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 change | |
![]() | 17:00 Budapest, Népliget Autóbusz-Pályaudvar | 14h25 | 07:25 Milano, Autostazione Lampugnano | 0 changesdirect | |
![]() | 20:30 Budapest, Liszt Ferenc Nemzetközi Repülőtér | 22h20 | 18:50 Milano, Autostazione Lampugnano | 1 change | |
![]() | 20:30 Budapest, Liszt Ferenc Nemzetközi Repülőtér | 22h40 | 19:10 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 changes | |
![]() | 21:00 Budapest, Népliget Autóbusz-Pályaudvar | 17h25 | 14:25 Milano, Autostazione Lampugnano | 1 change | |
![]() | 21:00 Budapest, Népliget Autóbusz-Pályaudvar | 19h30 | 16:30 Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 change | |
![]() | 21:05 Budapest, Népliget Autóbusz-Pályaudvar | 21h50 | 18:55 Milano, Milan Linate Airport | 2 changes | |
![]() | 21:20 Budapest, Kelenföld Vasútállomás | 21h35 | 18:55 Milano, Milan Linate Airport | 2 changes | |
![]() | 23:45 Budapest, Népliget Autóbusz-Pályaudvar | 19h05 | 18:50 Milano, Autostazione Lampugnano | 1 change | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
Distance 787 km |
Average bus duration 18h 38m |
Cheapest ticket price £51 |
Buses per day 29 |
Direct buses 2 |
Fastest bus 14h 25m |
First bus 00:10 |
Last bus 23:50 |
Travel between Budapest and Milan from £30 with Omio’s coach partners FlixBus, BlaBlaCar Bus and Infobus! You can find the best timetables and tickets when comparing and booking the most convenient route for you.
FlixBus is one of Europe's leading low-cost coach operators, founded in Germany and offering long-distance coach services in Europe and the U. S. FlixBus also operates overnight coaches on select routes throughout Europe. Standard amenities on FlixBus include free Wi-Fi, power outlets to charge your phone, tablet or laptop during long coach journeys, extra legroom, luggage space and toilets. You can even purchase snacks and drinks onboard. FlixBus offers only the Standard ticket for all its routes, which allows you to bring one hand luggage and one hold luggage per person. Additional fees apply for extra luggage and specific seat reservations, such as if you want to book an Extra Seat, Table Seat or the Panorama Seat.
Coach information from Budapest to Milan with FlixBus:
Passengers board the coach most frequently from Budapest, Népliget Autóbusz-Pályaudvar, which is located around 5.2 miles (8.4 km) away from the city centre, and they get off the coach at Orio al Serio, Milan Bergamo Airport (Bus station), located 28.2 miles (45.5 km) away from the city centre.
To find the cheapest bus tickets for your trip from Budapest to Milan, follow these tips:
Start your search now and compare ticket prices to find the best deal!
Here are some other resources that might have the information you need