The cheapest and fastest buses from Bologna to Milan
Cheapest price
€14
Average price
€24
Fastest journey
2 h 15 m
Average duration
2 h 24 m
Buses per day
43
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 €24 if you buy it on the day, but the cheapest tickets can be found for only €14.
Of the 43 buses that leave Bologna for Milan on Tue, Jul 07, 40 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Tue, Jul 07 the direct buses cover the 201 km distance in an average of 2 h 24 m but if you time it right, some buses will get you there in just 2 h 15 m .
On Tue, Jul 07 the slowest buses will take 2 h 30 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.
947423:40 PM3h00Bologna, Autostazione (Piazza XX Settembre)6:40 PMMilano, Autostazione Lampugnano€141One-way0 transfers
21261:25 PM3h15Bologna, Autostazione (Piazza XX Settembre)4:40 PMMilano, Autostazione Lampugnano€141One-way0 transfers
24024:20 PM2h30Bologna, Autostazione (Piazza XX Settembre)6:50 PMMilano, San Donato - Settore B (Viale Giuseppe Impastato)€141One-way0 transfers
349211:45 AM3h00Bologna, Autostazione (Piazza XX Settembre)2:45 PMMilano, Autostazione Lampugnano€151One-way0 transfers
22144:35 AM3h00Bologna, Autostazione (Piazza XX Settembre)7:35 AMMilano, San Donato - Settore B (Viale Giuseppe Impastato)€151One-way0 transfers
0544:10 AM2h15Bologna, Autostazione (Piazza XX Settembre)6:25 AMMilano, San Donato - Settore B (Viale Giuseppe Impastato)€151One-way0 transfers
FlixBus12:15 PM2h20Bologna, Autostazione (Piazza XX Settembre)2:35 PMMilano, San Donato - Settore B (Viale Giuseppe Impastato)€211One-way0 transfers
1017:15 AM2h25Bologna, Autostazione (Piazza XX Settembre)9:40 AMMilano, San Donato - Settore B (Viale Giuseppe Impastato)€181One-way0 transfers
FlixBus5:00 AM2h30Bologna, Autostazione (Piazza XX Settembre)7:30 AMMilano, San Donato - Settore B (Viale Giuseppe Impastato)€391One-way0 transfers
38264:35 AM2h30Bologna, Autostazione (Piazza XX Settembre)7:05 AMMilano, San Donato - Settore B (Viale Giuseppe Impastato)€601One-way0 transfers
Travel Information
Compare train and bus 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 €4. For those with little time consider booking a train which can get you there in 2h 18m. 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 €4, and a train costs an average of €11.
Distance: 201 km
Compare bus with
| Bus | Most popular Train |
|---|---|
€10 Average price Cheapest | €23 Average price |
3h 18m Average total duration 2h 48m Onboard + 30m Additional time* | 2h 48m Average total duration Fastest 2h 18m 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, Monday, July 6. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
FlixBus | 8:20 PM Bologna, Autostazione (Piazza XX Settembre) | 3h15 | 11:35 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 10:00 PM Bologna, Autostazione (Piazza XX Settembre) | 3h05 | 1:05 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus · FlixBus | 11:30 PM Bologna, Autostazione (Piazza XX Settembre) | 10h45 | 10:15 AM Milano, Milan Linate Airport | 1 transfer | |
| Tuesday, July 7 | |||||
FlixBus | 1:20 AM Bologna, Autostazione (Piazza XX Settembre) | 2h40 | 4:00 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus · FlixBus | 2:50 AM Bologna, Autostazione (Piazza XX Settembre) | 9h05 | 11:55 AM Milano, Milan Linate Airport | 1 transfer | |
FlixBus | 3:10 AM Bologna, Autostazione (Piazza XX Settembre) | 2h40 | 5:50 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 3:10 AM Bologna, Autostazione (Piazza XX Settembre) | 3h15 | 6:25 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 4:05 AM Bologna, Autostazione (Piazza XX Settembre) | 2h50 | 6:55 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
054 | 4:10 AM Bologna, Autostazione (Piazza XX Settembre) | 2h15 | 6:25 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
054 | 4:10 AM Bologna, Autostazione (Piazza XX Settembre) | 2h50 | 7:00 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
2422 | 4:30 AM Bologna, Autostazione (Piazza XX Settembre) | 3h10 | 7:40 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
2214 | 4:35 AM Bologna, Autostazione (Piazza XX Settembre) | 3h00 | 7:35 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
3826 | 4:35 AM Bologna, Autostazione (Piazza XX Settembre) | 3h15 | 7:50 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
2214 | 4:35 AM Bologna, Autostazione (Piazza XX Settembre) | 3h45 | 8:20 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
3826 | 4:35 AM Bologna, Autostazione (Piazza XX Settembre) | 2h30 | 7:05 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 5:00 AM Bologna, Autostazione (Piazza XX Settembre) | 3h15 | 8:15 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 5:00 AM Bologna, Autostazione (Piazza XX Settembre) | 2h30 | 7:30 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
2418 | 5:25 AM Bologna, Autostazione (Piazza XX Settembre) | 2h45 | 8:10 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 5:35 AM Bologna, Autostazione (Piazza XX Settembre) | 3h40 | 9:15 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 5:35 AM Bologna, Autostazione (Piazza XX Settembre) | 2h55 | 8:30 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 6:10 AM Bologna, Autostazione (Piazza XX Settembre) | 2h45 | 8:55 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 6:10 AM Bologna, Autostazione (Piazza XX Settembre) | 3h20 | 9:30 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
101 | 7:15 AM Bologna, Autostazione (Piazza XX Settembre) | 3h05 | 10:20 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
101 | 7:15 AM Bologna, Autostazione (Piazza XX Settembre) | 2h25 | 9:40 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus · FlixBus | 8:25 AM Bologna, Autostazione (Piazza XX Settembre) | 7h05 | 3:30 PM Milano, Milan Linate Airport | 1 transfer | |
FlixBus | 8:50 AM Bologna, Autostazione (Piazza XX Settembre) | 2h55 | 11:45 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 9:15 AM Bologna, Autostazione (Piazza XX Settembre) | 2h50 | 12:05 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 10:40 AM Bologna, Autostazione (Piazza XX Settembre) | 2h45 | 1:25 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus · FlixBus | 11:20 AM Bologna, Autostazione (Piazza XX Settembre) | 9h35 | 8:55 PM Milano, Milan Linate Airport | 1 transfer | |
3492 | 11:45 AM Bologna, Autostazione (Piazza XX Settembre) | 3h00 | 2:45 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 12:15 PM Bologna, Autostazione (Piazza XX Settembre) | 2h20 | 2:35 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 12:15 PM Bologna, Autostazione (Piazza XX Settembre) | 3h05 | 3:20 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 1:00 PM Bologna, Autostazione (Piazza XX Settembre) | 3h25 | 4:25 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
2126 | 1:25 PM Bologna, Autostazione (Piazza XX Settembre) | 3h15 | 4:40 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 1:55 PM Bologna, Autostazione (Piazza XX Settembre) | 3h15 | 5:10 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
3802 | 2:10 PM Bologna, Autostazione (Piazza XX Settembre) | 3h00 | 5:10 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 3:00 PM Bologna, Autostazione (Piazza XX Settembre) | 2h55 | 5:55 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 3:30 PM Bologna, Autostazione (Piazza XX Settembre) | 3h50 | 7:20 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 3:40 PM Bologna, Autostazione (Piazza XX Settembre) | 2h55 | 6:35 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
94742 | 3:40 PM Bologna, Autostazione (Piazza XX Settembre) | 3h00 | 6:40 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
2402 | 4:20 PM Bologna, Autostazione (Piazza XX Settembre) | 2h30 | 6:50 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 5:30 PM Bologna, Autostazione (Piazza XX Settembre) | 3h20 | 8:50 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 5:30 PM Bologna, Autostazione (Piazza XX Settembre) | 2h30 | 8:00 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 0 transfersDirect | |
FlixBus | 5:55 PM Bologna, Autostazione (Piazza XX Settembre) | 3h45 | 9:40 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 6:10 PM Bologna, Autostazione (Piazza XX Settembre) | 3h15 | 9:25 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
Find all the dates and times for this journey
Compare prices and tickets Bologna to Milan by train or bus
Compare train and bus 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.
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 23
Jul 24
Jul 25
Jul 26
Jul 27
Why should you book Bologna to Milan buses with Omio?
Why book with Omio vs FlixBus?
- Compare with other providers: On Omio, you can not only buy tickets for FlixBus, but also compare tickets for the likes of Itabus, Marino Autolinee, BlaBlaCar Bus or Infobus to find the best option for your trip from Bologna to Milan.
- 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 train and bus to ensure you get the best deal for traveling from Bologna to Milan.
Why book with Omio over Wanderu, Trainline or Checkmybus?
- Compare with other providers: On Omio, you can also compare tickets for the likes of Itabus, Marino Autolinee, BlaBlaCar Bus or Infobus to find the best option for your trip from Bologna to Milan.
- Multiple modes of transport: Omio allows you to compare travel options including train and bus to find the ideal travel option from Bologna to Milan.
Journey information
Overview: Bus from Bologna to Milan
Buses from Bologna to Milan run on average 48 times per day, taking around 2h 48m. Cheap bus tickets for this journey start at €4 if you book in advance.
There are 45 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 2h 48m |
Cheapest ticket price €4 |
Buses per day 48 |
Direct buses 45 |
Fastest bus 2h 15m |
First bus 12:10 AM |
Last bus 11:55 PM |
Cheapest Month Apr |
Cheapest Day Sat |
High Season Apr - Jun |
Low Season Jan - Mar |
Busiest Day Sat |
Least Busy Day Wed |
Best time to book 91 days |
Bus providers: FlixBus, Itabus, Marino Autolinee, BlaBlaCar Bus, BlaBlaCar, Infobus, Busitalia, Autolinee Federico from Bologna to MilanYou can travel by bus between Bologna to Milan with FlixBus, Itabus, Marino Autolinee, BlaBlaCar Bus, BlaBlaCar, Infobus, Busitalia, Autolinee Federico for as low as €4. When you search for schedules and tickets, Omio will show you the best journey
FlixBus
Itabus
Marino Autolinee
Infobus
BlaBlaCar Bus
Busitalia
BlaBlaCar
Autolinee Federico
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.

- Marino Autolinee
- Assistance
- Priority seating
- Accessible restrooms.
- FlixBus
- Assistance
- Priority boarding
- Wheelchair-accessible buses.
- Itabus
- Assistance
- Dedicated seating areas
- Accessible restrooms.
- Marino Autolinee
- You can cancel your ticket up to 24 hours before departure for a full refund. Cancellations within 24 hours incur a 50% fee.
- 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.
- Itabus
- You can cancel your ticket up to 24 hours before departure for a partial refund. Changes allowed for a fee.
- Marino Autolinee
- One carry-on bag up to 10kg (55x40x20 cm) and one checked bag up to 20kg (80x50x30 cm).
- FlixBus
- One carry-on bag up to 7kg (42x30x18 cm) and one checked bag up to 20kg (80x50x30 cm).
- Itabus
- One carry-on bag up to 10kg and one checked bag up to 20kg.
- Marino Autolinee
- 10€ per additional bag up to 20 kg.
- FlixBus
- Additional luggage can be purchased for a fee.
- Itabus
- 5€ per additional bag.
- Marino Autolinee
- Small pets allowed in carriers
- larger pets must be leashed and muzzled.
- FlixBus
- Small pets in carriers allowed
- guide dogs travel for free.
- Itabus
- Small pets allowed in carriers
- larger pets must be leashed and muzzled.
popular bus stations
Popular bus stations from Bologna to Milan
Most Bologna to Milan buses use the Bologna, Autostazione (Piazza XX Settembre) to Milano, Autostazione Lampugnano station pair, with some services arriving at Milano, San Donato - Settore B (Viale Giuseppe Impastato). Use this guide to compare Bologna and Milan bus stations on this route, check city-centre transport, alongside checking practicalities like bus station facilities and services.
Which Bologna station do buses to Milan leave from?
Getting to Bologna, Autostazione (Piazza XX Settembre) from Bologna city centre
Bologna, Autostazione (Piazza XX Settembre) is 1 km from Bologna city centre. Public transport options include:
Bologna, Autostazione (Piazza XX Settembre) bus station facilities and services
Bologna, Autostazione (Piazza XX Settembre) has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food and drink
Food options include: Cafeteria Autostazione (in the station), Trattoria del Rosso (0.5 km), Osteria Broccaindosso (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 Bologna, Autostazione (Piazza XX Settembre).
Parking, taxis and toilets
Available at Bologna, Autostazione (Piazza XX Settembre): Parking, Taxis, WC.
Accessibility
Accessibility facilities are available at Bologna, Autostazione (Piazza XX Settembre): Elevators, ramps.
Getting to Bologna, Piaza XX Settembre from Bologna city centre
Which Milan station do buses from Bologna arrive at?
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
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

