The cheapest and fastest buses from Bologna to Milan
Cheapest price
€6
Average price
€15
Fastest journey
2 h 10 m
Average duration
2 h 15 m
Buses per day
64
Distance
201 km
The best way to find a cheap bus ticket from Bologna to Milan is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Bologna to Milan will cost around €15 if you buy it on the day, but the cheapest tickets can be found for only €6.
Of the 64 buses that leave Bologna for Milan on Sat, Nov 22, 61 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Sat, Nov 22 the direct buses cover the 201 km distance in an average of 2 h 15 m but if you time it right, some buses will get you there in just 2 h 10 m .
On Sat, Nov 22 the slowest buses will take 2 h 20 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.
3804
3804
2402
048
048

048
FlixBus
Travel Information
Compare bus and train for Bologna to Milan
Omio recommends booking the train as it is the most popular option from Bologna to Milan among Omio's users. If you are prioritising price take the bus with prices starting from €3. For those with little time consider booking a train which can get you there in 1h 59m. In case you are seeking to minimise your carbon footprint the train is your best bet as it emits only 0.1 - 0.2kg. The ticket price range depends on the travel mode: a bus costs an average of €3, and a train costs an average of €17.
Distance: 201 km
Compare bus with
| Bus | Most popular Train |
|---|---|
€12 Average price Cheapest | €25 Average price |
3h 41m Average total duration 3h 11m Onboard + 30m Additional time* | 2h 29m Average total duration Fastest 1h 59m Onboard + 30m Additional time* |
0.2 - 0.5kg CO2 emissions | 0.1 - 0.2kg CO2 emissions Lowest |
![]() Most popular bus company | ![]() Most popular train company |
Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
Live departures
Bologna to Milan bus times
The table below shows live departures for Bologna to Milan buses for today, Friday, November 21. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
2418 | 4:15 AM Bologna, Autostazione (Piazza XX Settembre) | 3h20 | 7:35 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 4:35 AM Bologna, Autostazione (Piazza XX Settembre) | 3h40 | 8:15 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 4:35 AM Bologna, Autostazione (Piazza XX Settembre) | 2h55 | 7:30 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 5:10 AM Bologna, Autostazione (Piazza XX Settembre) | 2h45 | 7:55 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 5:10 AM Bologna, Autostazione (Piazza XX Settembre) | 3h20 | 8:30 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
101 | 6:15 AM Bologna, Autostazione (Piazza XX Settembre) | 2h25 | 8:40 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
101 | 6:15 AM Bologna, Autostazione (Piazza XX Settembre) | 3h05 | 9:20 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 7:00 AM Bologna, Autostazione (Piazza XX Settembre) | 3h10 | 10:10 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 7:00 AM Bologna, Autostazione (Piazza XX Settembre) | 2h25 | 9:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 8:00 AM Bologna, Autostazione (Piazza XX Settembre) | 2h30 | 10:30 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 8:15 AM Bologna, Autostazione (Piazza XX Settembre) | 2h50 | 11:05 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 10:05 AM Bologna, Autostazione (Piazza XX Settembre) | 2h50 | 12:55 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
3492 | 10:45 AM Bologna, Autostazione (Piazza XX Settembre) | 3h00 | 1:45 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 11:15 AM Bologna, Autostazione (Piazza XX Settembre) | 3h05 | 2:20 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 11:15 AM Bologna, Autostazione (Piazza XX Settembre) | 2h20 | 1:35 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
2126 | 11:45 AM Bologna, Autostazione (Piazza XX Settembre) | 3h15 | 3:00 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus · FlixBus | 12:25 PM Bologna, Autostazione (Piazza XX Settembre) | 7h30 | 7:55 PM Milano, Milan Linate Airport | 1 transfer | |
3802 | 12:45 PM Bologna, Autostazione (Piazza XX Settembre) | 3h00 | 3:45 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 12:55 PM Bologna, Autostazione (Piazza XX Settembre) | 3h15 | 4:10 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 2:00 PM Bologna, Autostazione (Piazza XX Settembre) | 2h55 | 4:55 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 2:20 PM Bologna, Autostazione (Piazza XX Settembre) | 3h50 | 6:10 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 2:40 PM Bologna, Autostazione (Piazza XX Settembre) | 2h55 | 5:35 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
200 | 2:50 PM Bologna, Autostazione (Piazza XX Settembre) | 3h35 | 6:25 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
200 | 2:50 PM Bologna, Autostazione (Piazza XX Settembre) | 2h50 | 5:40 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 3:55 PM Bologna, Autostazione (Piazza XX Settembre) | 3h50 | 7:45 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 3:55 PM Bologna, Autostazione (Piazza XX Settembre) | 3h10 | 7:05 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 4:25 PM Bologna, Autostazione (Piazza XX Settembre) | 2h30 | 6:55 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 4:25 PM Bologna, Autostazione (Piazza XX Settembre) | 3h20 | 7:45 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
3804 | 4:45 PM Bologna, Autostazione (Piazza XX Settembre) | 2h55 | 7:40 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
3804 | 4:45 PM Bologna, Autostazione (Piazza XX Settembre) | 3h40 | 8:25 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 4:55 PM Bologna, Autostazione (Piazza XX Settembre) | 3h45 | 8:40 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 5:30 PM Bologna, Autostazione (Piazza XX Settembre) | 2h25 | 7:55 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 5:30 PM Bologna, Autostazione (Piazza XX Settembre) | 3h05 | 8:35 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 7:20 PM Bologna, Autostazione (Piazza XX Settembre) | 3h15 | 10:35 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
2490 | 8:00 PM Bologna, Autostazione (Piazza XX Settembre) | 3h35 | 11:35 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
2490 | 8:00 PM Bologna, Autostazione (Piazza XX Settembre) | 2h49 | 10:49 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 9:00 PM Bologna, Autostazione (Piazza XX Settembre) | 3h05 | 12:05 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 9:25 PM Bologna, Autostazione (Piazza XX Settembre) | 2h20 | 11:45 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 9:25 PM Bologna, Autostazione (Piazza XX Settembre) | 2h54 | 12:19 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus · FlixBus | 10:30 PM Bologna, Autostazione (Piazza XX Settembre) | 10h35 | 9:05 AM Milano, Milan Linate Airport | 1 transfer | |
FlixBus | 12:20 AM Bologna, Autostazione (Piazza XX Settembre) | 2h40 | 3:00 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
3898 | 1:30 AM Bologna, Autostazione (Piazza XX Settembre) | 3h40 | 5:10 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus · FlixBus | 1:50 AM Bologna, Autostazione (Piazza XX Settembre) | 9h05 | 10:55 AM Milano, Milan Linate Airport | 1 transfer | |
FlixBus | 2:10 AM Bologna, Autostazione (Piazza XX Settembre) | 3h15 | 5:25 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 2:10 AM Bologna, Autostazione (Piazza XX Settembre) | 2h40 | 4:50 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
2494 | 2:30 AM Bologna, Autostazione (Piazza XX Settembre) | 3h25 | 5:55 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
3826 | 2:45 AM Bologna, Autostazione (Piazza XX Settembre) | 3h05 | 5:50 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
3826 | 2:45 AM Bologna, Autostazione (Piazza XX Settembre) | 3h50 | 6:35 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 3:05 AM Bologna, Autostazione (Piazza XX Settembre) | 2h50 | 5:55 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
048 | 3:10 AM Bologna, Autostazione (Piazza XX Settembre) | 2h15 | 5:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
048 | 3:10 AM Bologna, Autostazione (Piazza XX Settembre) | 2h50 | 6:00 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
2422 | 3:25 AM Bologna, Autostazione (Piazza XX Settembre) | 3h10 | 6:35 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
2204 | 3:35 AM Bologna, Autostazione (Piazza XX Settembre) | 2h55 | 6:30 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
2204 | 3:35 AM Bologna, Autostazione (Piazza XX Settembre) | 3h40 | 7:15 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
This is the last bus of the day. | |||||
Find all the dates and times for this journey
Compare prices and tickets Bologna to Milan by bus or train
Compare bus 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.
Nov 21
Nov 22
Nov 23
Nov 24
Nov 25
Nov 26
Nov 27
Nov 28
Nov 29
Nov 30
Dec 01
Dec 02
Dec 03
Dec 04
Dec 05
Dec 06
Dec 07
Dec 08
Dec 09
Dec 10
Dec 11
Journey information
Overview: Bus from Bologna to Milan
Buses from Bologna to Milan run on average 45 times per day, taking around 3h 11m. Cheap bus tickets for this journey start at €3 if you book in advance.
There are 42 buses per day. The earliest bus runs at 00:10, the last at 23:55. The fastest bus covers the 201 km distance in 2h 15m.
Distance 201 km |
Average bus duration 3h 11m |
Cheapest ticket price €3 |
Buses per day 45 |
Direct buses 42 |
Fastest bus 2h 15m |
First bus 00:10 |
Last bus 23:55 |
Bus providers: Itabus, FlixBus, Marino Autolinee, BlaBlaCar Bus, BlaBlaCar, Infobus, Autoservizi Salemi Srl from Bologna to MilanYou can travel by bus between Bologna to Milan with Itabus, FlixBus, Marino Autolinee, BlaBlaCar Bus, BlaBlaCar, Infobus, Autoservizi Salemi Srl for as low as €3. When you search for schedules and tickets, Omio will show you the best journey
Itabus
FlixBus
Marino Autolinee
Infobus
BlaBlaCar Bus
BlaBlaCar
Autoservizi Salemi Srl
FAQs: Bus from Bologna to Milan
Find answers to the most common questions about traveling from Bologna to Milan by bus. 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 bus, the cheapest option, or tips for making the most of your visit at Milan, this guide helps you travel smarter and with confidence.

Passengers board the coach most frequently from Bologna, Autostazione (Piazza XX Settembre), which is located around 1.4 miles (2.2 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 Bologna to Milan, follow these tips:
Start your search now and compare ticket prices to find the best deal!
popular bus stations
Popular bus stations from Bologna to Milan
- 05:30-23:00
- Free Wi-Fi
- Cafeteria Autostazione (in the station)
- Trattoria del Rosso (0.5 km)
- Osteria Broccaindosso (0.7 km).
- Available outside the main entrance.
- Elevators, ramps
- Available in the station.
- Bus: 11, 21, 25, 30 Train: Bologna Centrale
- 06:00-23:00
- Free Wi-Fi
- Cafeteria Milano (in the station)
- Trattoria San Donato (0.5 km)
- Burger House (0.7 km).
- Available outside the station.
- Elevators, ramps
- Available in the station.
- Metro: M3 Bus: 121, 132, 133
- 06:00-23:00
- Free Wi-Fi
- Available outside the station, near the arrivals area.
- Elevators, ramps
- Available in the station.
- Bus: 1, 1A
- 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
- The place has an entrance that is wheelchair-accessible
Most popular bus connections from Bologna
More options for your journey from Bologna to Milan
Here are some other resources that might have the information you need

