- Must visit
Pinacoteca di Brera
Milan’s premier fine-art gallery, known for masterpieces by Raphael, Caravaggio, and Mantegna in the historic Brera district.
Cheapest price
$67
Average price
$101
Fastest journey
13 h 45 m
Average duration
14 h 31 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 $101 if you buy it on the day, but the cheapest tickets can be found for only $67.
Of the 24 buses that leave Barcelona for Milan on Wed, Jul 08, 6 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
On Wed, Jul 08 the direct buses cover the 726 km distance in an average of 14 h 31 m but if you time it right, some buses will get you there in just 13 h 45 m .
On Wed, Jul 08 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.
54152 · 51047
4734
4732
Normal
FlixBus · FlixBus · FlixBus
FlixBus
4734
Normal
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 $12. For those with little time consider booking a flight which can get you there in 4h 14m. 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 $12, and a flight costs an average of $33.
Distance: 451 miles (726 km)
| Bus | Most popular Flight | Train | Ferry | Driving |
|---|---|---|---|---|
$56 Average price Cheapest | $221 Average price | $178 Average price | $113 Average price | $29 Average price (fuel + tolls) |
12h 9m Average total duration 11h 39m Onboard + 30m Additional time* | 7h 14m Average total duration Fastest 4h 14m Onboard + 3h 0m Additional time* | 7h 25m Average total duration 6h 55m Onboard + 30m Additional time* | 24h 36m Average total duration 23h 36m 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 $58 (€48) less than a ferry for this route with tickets for a ferry from Barcelona to Milan costing on average $113 (€93).
A bus is $123 (€101) less than a train for this route with tickets for a train from Barcelona to Milan costing on average $178 (€147).
A bus is $166 (€136) less than a flight for this route with tickets for a flight from Barcelona to Milan costing on average $221 (€182).
Other travel options to Milan take longer:
Train takes on average 6h 55m.
Bus takes on average 11h 39m.
Ferry takes on average 23h 36m.
You'll arrive about -2h -19m sooner (11h 39m by bus vs 10h 20m by car) and save roughly $-26.92 (€-22.12) compared to fuel and tolls ($56 (€46) vs $29 (€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 BlaBlaCar Bus, Itabus, 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, Fri, Sat, Sun | Cheapest price $91 |
Operator FlixBus | Departure Time 02:30AM | Arrival Time 09:55PM | Duration 19h25 | Departure days Mon, Wed, Sat, Sun | Cheapest price $111 |
Operator FlixBus | Departure Time 02:50AM | Arrival Time 06:10PM | Duration 15h20 | Departure days Mon, Wed, Thu, Fri, Sat, Sun | Cheapest price $99 |
Operator FlixBus | Departure Time 09:30AM | Arrival Time 01:05AM | Duration 15h35 | Departure days Wed, Thu, Fri, Sat, Sun | Cheapest price $90 |
Operator Alsa | Departure Time 09:35AM | Arrival Time 12:10AM | Duration 14h35 | Departure days Wed, Sun | Cheapest price $79 |
Operator BlaBlaCar Bus | Departure Time 09:35AM | Arrival Time 12:10AM | Duration 14h35 | Departure days Mon, Wed, Thu, Fri, Sat, Sun | Cheapest price $58 |
Operator BlaBlaCar Bus | Departure Time 10:30AM | Arrival Time 05:45AM | Duration 19h15 | Departure days Mon, Thu, Fri, Sat, Sun | Cheapest price $109 |
Operator BlaBlaCar Bus | Departure Time 11:00AM | Arrival Time 06:00AM | Duration 19h00 | Departure days Mon, Wed, Thu, Fri, Sat, Sun | Cheapest price $94 |
Operator FlixBus | Departure Time 01:20PM | Arrival Time 05:25AM | Duration 16h05 | Departure days Mon, Wed, Thu, Fri, Sat, Sun | Cheapest price $101 |
Operator FlixBus | Departure Time 02:35PM | Arrival Time 08:50AM | Duration 18h15 | Departure days Mon, Wed, Thu, Fri, Sat, Sun | Cheapest price $124 |
Operator FlixBus | Departure Time 03:10PM | Arrival Time 09:35AM | Duration 18h25 | Departure days Mon, Wed, Thu, Fri, Sat, Sun | Cheapest price $103 |
Operator BlaBlaCar Bus | Departure Time 04:00PM | Arrival Time 06:55AM | Duration 14h55 | Departure days Mon, Wed, Thu, Fri, Sat, Sun | Cheapest price $73 |
Operator Alsa | Departure Time 04:00PM | Arrival Time 06:55AM | Duration 14h55 | Departure days Sat | Cheapest price $79 |
Operator FlixBus | Departure Time 04:15PM | Arrival Time 10:55AM | Duration 18h40 | Departure days Thu, Fri, Sat, Sun | Cheapest price $95 |
Operator BlaBlaCar Bus | Departure Time 05:30PM | Arrival Time 09:40AM | Duration 16h10 | Departure days Wed, Fri, Sun | Cheapest price $67 |
Operator FlixBus | Departure Time 07:30PM | Arrival Time 11:40AM | Duration 16h10 | Departure days Everyday | Cheapest price $80 |
Operator BlaBlaCar Bus | Departure Time 08:10PM | Arrival Time 02:05PM | Duration 17h55 | Departure days Everyday | Cheapest price $83 |
Operator FlixBus | Departure Time 08:55PM | Arrival Time 11:55AM | Duration 15h00 | Departure days Everyday | Cheapest price $88 |
Operator Itabus | Departure Time 09:10PM | Arrival Time 10:40AM | Duration 13h30 | Departure days Mon, Fri, Sat, Sun | Cheapest price $36 |
Operator FlixBus | Departure Time 09:25PM | Arrival Time 11:10AM | Duration 13h45 | Departure days Everyday | Cheapest price $38 |
Operator FlixBus | Departure Time 09:35PM | Arrival Time 04:45PM | Duration 19h10 | Departure days Everyday | Cheapest price $87 |
Operator FlixBus | Departure Time 09:45PM | Arrival Time 02:25PM | Duration 16h40 | Departure days Everyday | Cheapest price $102 |
Operator FlixBus | Departure Time 10:10PM | Arrival Time 04:45PM | Duration 18h35 | Departure days Everyday | Cheapest price $85 |
Operator | Departure Time 10:30PM | Arrival Time 05:00PM | Duration 18h30 | Departure days Sun | Cheapest price $98 |
Operator FlixBus | Departure Time 11:10PM | Arrival Time 05:05PM | Duration 17h55 | Departure days Everyday | Cheapest price $97 |
Operator FlixBus | Departure Time 11:40PM | Arrival Time 06:25PM | Duration 18h45 | Departure days Mon, Thu, Fri, Sat, Sun | Cheapest price $102 |
The table below shows live departures for Barcelona to Milan buses for today, Tuesday, July 7. You can also manually refresh the results below to see updated bus journeys.
| Provider | Departs | Duration | Arrives | Transfers | Tickets |
|---|---|---|---|---|---|
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 | |
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 | |
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 | |
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 | |
FlixBus · FlixBus | 9:45 PM Barcelona, Estación de Autobuses de Sants | 16h40 | 2:25 PM Milano, Autostazione Lampugnano | 1 transfer | |
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 | |
FlixBus · FlixBus · FlixBus | 11:10 PM Barcelona, Estación de Autobuses de Sants | 17h55 | 5:05 PM Milano, Autostazione Lampugnano | 2 transfers | |
| Wednesday, July 8 | |||||
83134 · 1727 | 12:30 AM Barcelona, Estació d'Autobusos Nord | 16h50 | 5:20 PM Milano, Autostazione Lampugnano | 1 transfer | |
FlixBus · FlixBus | 2:30 AM Barcelona, Estación de Autobuses de Sants | 19h25 | 9:55 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 | |
Normal | 9:35 AM Barcelona, Estació d'Autobusos Nord | 14h35 | 12:10 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
93130 · 4751 | 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 | 17h10 | 6:30 AM Milano, Autostazione Lampugnano | 1 transfer | |
FlixBus · FlixBus · FlixBus | 2:35 PM Barcelona, Estación de Autobuses de Sants | 18h15 | 8:50 AM Milano, Autostazione Lampugnano | 2 transfers | |
FlixBus · FlixBus | 3:10 PM Barcelona, Estació d'Autobusos Nord | 18h25 | 9:35 AM Milano, Autostazione Lampugnano | 1 transfer | |
4732 | 4:00 PM Barcelona, Estació d'Autobusos Nord | 14h55 | 6:55 AM Milano, Autostazione Lampugnano | 0 transfersDirect | |
54152 · 51047 | 5:30 PM Barcelona, Estació d'Autobusos Nord | 16h10 | 9:40 AM Milano, Autostazione Lampugnano | 1 transfer | |
This is the last bus of the day. | |||||
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 18 times per day, taking around 11h 39m. Cheap bus tickets for this journey start at $12 (€10) if you book in advance.
There are 4 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 11h 39m |
Cheapest ticket price $12 (€10) |
Buses per day 18 |
Direct buses 4 |
Fastest bus 13h 30m |
First bus 12:30 AM |
Last bus 11:55 PM |
Cheapest Month Apr |
Cheapest Day Sat |
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.
Milan’s premier fine-art gallery, known for masterpieces by Raphael, Caravaggio, and Mantegna in the historic Brera district.
A leading museum of 20th-century Italian art facing Piazza del Duomo, with strong Futurist and modern collections.
A major design-forward museum for world cultures and blockbuster temporary exhibitions in the Tortona area.
Milan’s canal district, loved for waterside walks, lively atmosphere, and photogenic bridges and alleys.
A charming central neighborhood with elegant streets, galleries, boutiques, and a classic Milan atmosphere.
Milan’s main square and symbolic heart, framed by the cathedral, museums, and major historic buildings.
Creamy saffron risotto, one of Milan’s signature dishes, prized for its rich color and elegant flavor.
Braised veal shank, often served with risotto alla Milanese, a classic celebratory dish from Milanese cuisine.
Breaded veal cutlet fried until golden, a famous Milan specialty often compared with schnitzel but traditionally thicker.
Legendary casual stop near the Duomo, famous for panzerotti and a beloved institution for quick, affordable bites.
Well-known modern Milanese restaurant near Porta Nuova, celebrated for refined local classics in a stylish setting.
Historic trattoria serving traditional Milanese and Lombard dishes in an old-fashioned, atmospheric dining room.
Prices are high by Italian standards, especially for hotels and central dining, though transit and casual food stay manageable.
Tipping is modest. Service may be included. Round up or leave EUR 1-2 for coffee, 5-10% at restaurants for good service, and round up taxi fares.
Official public transport app
Orio Al Serio Airport Bus Station, Bergamo -> 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