- Must visit
Pinacoteca di Brera
One of Italy’s top art museums, featuring masterpieces by Mantegna, Bellini, Raphael, Caravaggio, and Piero della Francesca.
Cheapest price
$87
Average price
$195
Fastest journey
13 h 30 m
Average duration
14 h 18 m
Buses per day
24
Distance
726 km
The best way to find a cheap bus ticket from Barcelona to Milan is to book your journey as far in advance as possible and to avoid traveling at rush hour.
The average ticket from Barcelona to Milan will cost around $195 if you buy it on the day, but the cheapest tickets can be found for only $87.
Of the 24 buses that leave Barcelona for Milan on Sat, Aug 22, 6 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Sat, Aug 22 the direct buses cover the 726 km distance in an average of 14 h 18 m but if you time it right, some buses will get you there in just 13 h 30 m .
On Sat, Aug 22 the slowest buses will take 14 h 55 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.
4591
4734
FlixBus · FlixBus
FlixBus · FlixBus
FlixBus · FlixBus
4591
FlixBus
4734
FlixBus · FlixBus
4732Omio recommends booking the flight as it is the most popular option from Barcelona to Milan among Omio's users. If you are prioritising price take the bus with prices starting from $16. For those with little time consider booking a flight which can get you there in 4h 9m. In case you are seeking to minimise your carbon footprint the bus is your best bet as it emits only 0.7 - 1.8kg. The ticket price range depends on the travel mode: a bus costs an average of $16, and a train costs an average of $107.
Distance: 451 miles (726 km)
| Bus | Most popular Flight | Train | Ferry | Driving |
|---|---|---|---|---|
$63 Average price Cheapest | $95 Average price | $182 Average price | $103 Average price | $30 Average price (fuel + tolls) |
12h 50m Average total duration 12h 20m Onboard + 30m Additional time* | 7h 9m Average total duration Fastest 4h 9m Onboard + 3h 0m Additional time* | 7h 26m Average total duration 6h 56m Onboard + 30m Additional time* | 24h 28m Average total duration 23h 28m Onboard + 1h 0m Additional time* | 10h 20m Average total duration (door-to-door) |
0.7 - 1.8kg CO2 emissions Lowest | 2.2 - 4.3kg CO2 emissions | - CO2 emissions | - CO2 emissions | - CO2 emissions |
![]() Most popular bus company | ![]() Most popular airline | ![]() Most popular train company | ![]() Most popular ferry company | Your own car or car rental |
Direct Options | Direct Options | Direct Options | Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
This is compared to other travel options from Barcelona to Milan:
A bus is $32 (€25) less than a flight for this route with tickets for a flight from Barcelona to Milan costing on average $95 (€76).
A bus is $40 (€32) less than a ferry for this route with tickets for a ferry from Barcelona to Milan costing on average $103 (€83).
A bus is $119 (€96) less than a train for this route with tickets for a train from Barcelona to Milan costing on average $182 (€147).
Other travel options to Milan take longer:
Train takes on average 6h 56m.
Bus takes on average 12h 20m.
Ferry takes on average 23h 28m.
You'll arrive about -2h 0m sooner (12h 20m by bus vs 10h 20m by car) and save roughly $-33.43 (€-26.87) compared to fuel and tolls ($63 (€51) vs $30 (€24)). You also skip the drive itself — no traffic stress, no parking, and you can use the time to work, nap, or catch up on a series with the onboard Wi-Fi.
Direct coaches are operated by Itabus, BlaBlaCar Bus, FlixBus, Union Ivkoni International, Alsa, Infobus.
Driving is still worth considering if you're travelling with bulky luggage, need flexibility on departure times, or plan to stop along the way.
| Operator | Departure Time | Arrival Time | Duration | Departure days | Cheapest price |
|---|---|---|---|---|---|
Operator BlaBlaCar Bus | Departure Time 12:30AM | Arrival Time 05:20PM | Duration 16h50 | Departure days Mon, Wed, Thu, Sat, Sun | Cheapest price $118 |
Operator FlixBus | Departure Time 02:30AM | Arrival Time 09:55PM | Duration 19h25 | Departure days Mon, Tue, Wed, Thu, Sun | Cheapest price $168 |
Operator FlixBus | Departure Time 02:50AM | Arrival Time 06:10PM | Duration 15h20 | Departure days Mon, Tue, Wed, Thu, Sat, Sun | Cheapest price $98 |
Operator FlixBus | Departure Time 09:30AM | Arrival Time 01:05AM | Duration 15h35 | Departure days Wed, Thu, Sat, Sun | Cheapest price $101 |
Operator BlaBlaCar Bus | Departure Time 09:35AM | Arrival Time 12:10AM | Duration 14h35 | Departure days Mon, Tue, Wed, Thu, Sat, Sun | Cheapest price $87 |
Operator BlaBlaCar Bus | Departure Time 10:30AM | Arrival Time 05:45AM | Duration 19h15 | Departure days Mon, Thu, Sat, Sun | Cheapest price $101 |
Operator BlaBlaCar Bus | Departure Time 11:00AM | Arrival Time 06:00AM | Duration 19h00 | Departure days Mon, Tue, Wed, Thu, Sat, Sun | Cheapest price $81 |
Operator FlixBus | Departure Time 01:20PM | Arrival Time 05:25AM | Duration 16h05 | Departure days Mon, Tue, Wed, Thu, Sat, Sun | Cheapest price $123 |
Operator FlixBus | Departure Time 02:35PM | Arrival Time 08:50AM | Duration 18h15 | Departure days Mon, Tue, Wed, Thu, Sun | Cheapest price $122 |
Operator FlixBus | Departure Time 03:10PM | Arrival Time 09:35AM | Duration 18h25 | Departure days Mon, Tue, Wed, Thu, Sun | Cheapest price $119 |
Operator BlaBlaCar Bus | Departure Time 04:00PM | Arrival Time 06:55AM | Duration 14h55 | Departure days Mon, Tue, Wed, Thu, Sat, Sun | Cheapest price $56 |
Operator Alsa | Departure Time 04:00PM | Arrival Time 06:55AM | Duration 14h55 | Departure days Thu | Cheapest price $81 |
Operator FlixBus | Departure Time 04:15PM | Arrival Time 10:55AM | Duration 18h40 | Departure days Thu, Sat, Sun | Cheapest price $114 |
Operator BlaBlaCar Bus | Departure Time 05:30PM | Arrival Time 09:40AM | Duration 16h10 | Departure days Wed, Sun | Cheapest price $100 |
Operator FlixBus | Departure Time 07:30PM | Arrival Time 11:10AM | Duration 15h40 | Departure days Mon, Tue, Wed, Thu, Sat, Sun | Cheapest price $122 |
Operator FlixBus | Departure Time 08:05PM | Arrival Time 11:55AM | Duration 15h50 | Departure days Fri | Cheapest price $200 |
Operator BlaBlaCar Bus | Departure Time 08:10PM | Arrival Time 02:05PM | Duration 17h55 | Departure days Mon, Tue, Wed, Thu, Sat, Sun | Cheapest price $112 |
Operator FlixBus | Departure Time 08:55PM | Arrival Time 11:40AM | Duration 14h45 | Departure days Mon, Tue, Wed, Thu, Sat, Sun | Cheapest price $119 |
Operator Itabus | Departure Time 09:10PM | Arrival Time 10:40AM | Duration 13h30 | Departure days Everyday | Cheapest price $37 |
Operator FlixBus | Departure Time 09:25PM | Arrival Time 11:10AM | Duration 13h45 | Departure days Everyday | Cheapest price $61 |
Operator FlixBus | Departure Time 09:35PM | Arrival Time 04:45PM | Duration 19h10 | Departure days Everyday | Cheapest price $124 |
Operator FlixBus | Departure Time 09:45PM | Arrival Time 02:25PM | Duration 16h40 | Departure days Mon, Tue, Wed, Thu, Sat, Sun | Cheapest price $124 |
Operator FlixBus | Departure Time 10:10PM | Arrival Time 04:45PM | Duration 18h35 | Departure days Everyday | Cheapest price $124 |
Operator | Departure Time 10:30PM | Arrival Time 05:00PM | Duration 18h30 | Departure days Tue | Cheapest price $62 |
Operator FlixBus | Departure Time 11:10PM | Arrival Time 05:05PM | Duration 17h55 | Departure days Mon, Tue, Wed, Thu, Sat, Sun | Cheapest price $163 |
Operator FlixBus | Departure Time 11:40PM | Arrival Time 06:25PM | Duration 18h45 | Departure days Mon, Thu, Sat, Sun | Cheapest price $163 |
The table below shows live departures for Barcelona to Milan buses for today, Friday, August 21. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
FlixBus · FlixBus · FlixBus | 10:10 PM Barcelona, Estació d'Autobusos Nord | 18h35 | 4:45 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 transfers | |
| Saturday, August 22 | |||||
83134 · 1727 | 12:30 AM Barcelona, Estació d'Autobusos Nord | 16h50 | 5:20 PM Milano, Autostazione Lampugnano | 1 transfer | |
FlixBus | 2:50 AM Barcelona, Estació d'Autobusos Nord | 15h20 | 6:10 PM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus | 9:30 AM Barcelona, Estació d'Autobusos Nord | 15h35 | 1:05 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
4734 | 9:35 AM Barcelona, Estació d'Autobusos Nord | 14h35 | 12:10 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
3177 · 57201 | 10:30 AM Barcelona, Estació d'Autobusos Nord | 19h15 | 5:45 AM Milano, Autostazione Lampugnano | 1 transfer | |
93130 · 94561 | 11:00 AM Barcelona, Estació d'Autobusos Nord | 19h00 | 6:00 AM Milano, Autostazione Lampugnano | 1 transfer | |
FlixBus · FlixBus | 1:20 PM Barcelona, Estació d'Autobusos Nord | 16h05 | 5:25 AM Milano, Autostazione Lampugnano | 1 transfer | |
4732 | 4:00 PM Barcelona, Estació d'Autobusos Nord | 14h55 | 6:55 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus · FlixBus | 4:15 PM Barcelona, Estació d'Autobusos Nord | 18h40 | 10:55 AM Milano, Autostazione Lampugnano | 1 transfer | |
FlixBus · FlixBus | 7:30 PM Barcelona, Estación de Autobuses de Sants | 15h40 | 11:10 AM Milano, Autostazione Lampugnano | 1 transfer | |
FlixBus · FlixBus · FlixBus | 7:30 PM Barcelona, Estación de Autobuses de Sants | 16h25 | 11:55 AM Milano, Milan Linate Airport | 2 transfers | |
FlixBus · FlixBus · FlixBus | 7:30 PM Barcelona, Estación de Autobuses de Sants | 16h10 | 11:40 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 transfers | |
3154 · 4767 | 8:10 PM Barcelona, Estació d'Autobusos Nord | 17h55 | 2:05 PM Milano, Autostazione Lampugnano | 1 transfer | |
FlixBus · FlixBus | 8:55 PM Barcelona, Estació d'Autobusos Nord | 15h00 | 11:55 AM Milano, Milan Linate Airport | 1 transfer | |
FlixBus · FlixBus | 8:55 PM Barcelona, Estació d'Autobusos Nord | 14h45 | 11:40 AM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
4591 | 9:10 PM Barcelona, Estació d'Autobusos Nord | 13h30 | 10:40 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus · FlixBus | 9:25 PM Barcelona, Estació d'Autobusos Nord | 15h55 | 1:20 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 1 transfer | |
FlixBus | 9:25 PM Barcelona, Estació d'Autobusos Nord | 13h45 | 11:10 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
FlixBus · FlixBus · FlixBus | 9:35 PM Barcelona, Estación de Autobuses de Sants | 19h10 | 4:45 PM Milano, San Donato - Settore B (Viale Giuseppe Impastato) | 2 transfers | |
Find all the dates and times for this journey
Compare train, bus, flight, and ferry 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.
Buses from Barcelona to Milan run on average 19 times per day, taking around 12h 20m. Cheap bus tickets for this journey start at $16 (€13) if you book in advance.
There are 5 buses per day. The earliest bus runs at 00:30, the last at 23:55. The fastest bus covers the 451 miles (726 km) distance in 13h 30m.
Distance 451 miles (726 km) |
Average bus duration 12h 20m |
Cheapest ticket price $16 (€13) |
Buses per day 19 |
Direct buses 5 |
Fastest bus 13h 30m |
First bus 12:30 AM |
Last bus 11:55 PM |
Cheapest Month Apr |
Cheapest Day Sun |
High Season Jul - Sep |
Low Season Jan - Mar |
Busiest Day Fri |
Least Busy Day Sat |
Best time to book 91 days |
Discover the best of Milan — top attractions, local food, transport tips, budget advice, and currency essentials. Plan your perfect Milan trip today.
One of Italy’s top art museums, featuring masterpieces by Mantegna, Bellini, Raphael, Caravaggio, and Piero della Francesca.
This contemporary art museum near Porta Romana presents rotating exhibitions in a striking former industrial distillery complex.
Italy’s leading science museum is set in a former monastery and features Leonardo galleries, trains, aircraft, and a submarine.
Milan’s central square frames the cathedral and major civic buildings, making it the city’s essential meeting point and photo stop.
This artistic district offers charming lanes, Brera atmosphere, boutiques, and easy access to galleries and evening strolls.
A large landscaped park behind the castle, perfect for walks, skyline views, and reaching landmarks like the Arch of Peace.
Saffron risotto cooked with butter, stock and cheese. It is Milan's signature dish, linked to the city's love of rich northern Italian rice cookery.
Breaded veal cutlet fried in butter until golden. A classic Milanese main, prized for its simple preparation and long-standing local tradition.
Slow-braised veal shanks with vegetables, wine and broth, often finished with gremolata. A hearty Lombard specialty commonly paired with risotto.
Three-Michelin-star fine dining by Enrico Bartolini in MUDEC. Expect refined Italian tasting menus in a polished contemporary setting.
Historic Milanese restaurant near the Duomo, famous for risotto and cotoletta. Traditional, elegant rooms and a strong local culinary identity.
Long-running local favorite for classic Milanese cuisine, especially risotto and ossobuco. Warm, old-school atmosphere in the Brera area.
Moderate for Western Europe. Hotels and central dining can be pricey, but transit is affordable and budget meals, aperitivo deals, and local cafes help keep daily costs reasonable.
Tipping is modest. Service may be included. Round up or leave €1-2 at cafes, 5-10% for good restaurant service, and round up taxi fares.
Official public transport app
Orio al Serio, Milan Bergamo Airport (Bus station) -> Milano Centrale, Milan
Buses in Europe are a convenient way to travel between cities, with a variety of routes available to both domestic and international destinations. Buses from Barcelona to Milan leave at regular intervals throughout the day, from early morning until early evening. Eurolines, Baltour, and Flixbus are the main bus companies that travel from Barcelona to Milan. Travel times on buses from Barcelona to Milan range from 13½ hours to just under 17 hours, depending on the service chosen.
Return buses from Milan to Barcelona | Compare all modes of traveling from Barcelona to Milan | Or learn more about buses to Milan
Average prices for buses from Barcelona to Milan when you book in advance
Booking Period |
Average Price |
|---|---|
Same Day |
€86 |
1 Day in Advance |
€70 |
1 Week in Advance |
€60 |
2 Weeks in Advance |
€53 |
1 Month in Advance |
€53 |
3 Months in Advance |
€50 |
Barcelona to Milan Buses: General Information
While buses are slower than both flights and trains, they can be significantly cheaper even though they take at least 13:20 h to arrive in Milan.
Based on Omio's travel data, as the table above clearly illustrates, ticket prices on Barcelona to Milan buses decrease the further they are booked in advance:
Find answers to the most common questions about traveling from Barcelona 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.

Most Barcelona to Milan buses use the Barcelona, Estació d'Autobusos Nord to Milano, Autostazione Lampugnano station pair, with some services arriving at Milano, San Donato - Settore B (Viale Giuseppe Impastato). Use this guide to compare Barcelona and Milan bus stations on this route, check city-centre transport, alongside checking practicalities like bus station facilities and services.
Barcelona, Estació d'Autobusos Nord is 2 km from Barcelona city centre. Public transport options include:
Barcelona, Estació d'Autobusos Nord has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Cafetería de la estación (in the station), Tapas 24 (0.4 km), Pizzeria Roma (0.6 km).
Free Wi-Fi. ATMs are located near the main entrance and inside the waiting area.
Ticket office support is available at Barcelona, Estació d'Autobusos Nord.
Available at Barcelona, Estació d'Autobusos Nord: Parking, Taxis, WC.
Accessibility facilities are available at Barcelona, Estació d'Autobusos Nord: Elevators, ramps.
Barcelona, Estación de Autobuses de Sants is 1 km from Barcelona city centre. Public transport options include:
Barcelona, Estación de Autobuses de Sants has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Cafetería de la estación (in the station), Fast Food Corner (in the station), Local Cuisine Spot (in the station).
Free Wi-Fi. ATMs are located near the main entrance and in the waiting area.
Ticket office support is available at Barcelona, Estación de Autobuses de Sants.
Available at Barcelona, Estación de Autobuses de Sants: Parking, Taxis, WC.
Accessibility facilities are available at Barcelona, Estación de Autobuses de Sants: Elevators, ramps.
El Prat de Llobregat, Aeroport de Barcelona-El Prat (T1 Arribades - La planta 0) is 13 km from Barcelona city centre. Public transport options include:
El Prat de Llobregat, Aeroport de Barcelona-El Prat (T1 Arribades - La planta 0) has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: McDonald's (in the station), La Botiga (in the station)
Free Wi-Fi. ATMs are located throughout the terminal.
Ticket office support is available at El Prat de Llobregat, Aeroport de Barcelona-El Prat (T1 Arribades - La planta 0).
Available at El Prat de Llobregat, Aeroport de Barcelona-El Prat (T1 Arribades - La planta 0): Parking, Taxis, WC.
Accessibility facilities are available at El Prat de Llobregat, Aeroport de Barcelona-El Prat (T1 Arribades - La planta 0): Elevators, ramps.
Milano, Autostazione Lampugnano is 5 km from Milan city centre. Public transport options include:
Milano, Autostazione Lampugnano has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Cafeteria Lampugnano (in the station), Trattoria Milano (0.5 km), Pizza Express (0.7 km).
Free Wi-Fi. ATMs are located near the main entrance.
Ticket office support is available at Milano, Autostazione Lampugnano.
Available at Milano, Autostazione Lampugnano: Parking, Taxis, WC.
Accessibility facilities are available at Milano, Autostazione Lampugnano: Elevators, ramps.
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) has practical services for this route, including Wifi, Parking, Dining, ATM, Taxis, Accessibility, WC, and Ticket Office.
Food options include: Cafeteria Italiana (in the station), Fast Food Express (in the station), Trattoria Milano (0.5 km).
Free Wi-Fi. ATMs are located near the main entrance for cash withdrawals.
Ticket office support is available at Milano, San Donato - Settore B (Viale Giuseppe Impastato).
Available at Milano, San Donato - Settore B (Viale Giuseppe Impastato): Parking, Taxis, WC.
Accessibility facilities are available at Milano, San Donato - Settore B (Viale Giuseppe Impastato): Elevators, ramps.
Here are some other resources that might have the information you need