Travel Information
Compare train, bus, flight, and ferry for Milan to Barcelona
Omio recommends booking the flight as it is the most popular option from Milan to Barcelona among Omio's users. If you are prioritising price, take the train, with an average ticket price of €77 For those with little time, consider booking a flight, which has an average total journey time of 5h 55m. If you are seeking to minimise your carbon footprint, the bus is your best option, with estimated CO2 emissions of 0.7 - 1.8kg. Average ticket prices depend on the travel mode: a train costs an average of €77, while a flight costs an average of €370.
Distance: 451 miles (726 km)
Compare flight with
Most popular Flight | Bus | Train | Ferry | Driving |
|---|---|---|---|---|
€370 Average price | €78 Average price | €77 Average price Cheapest | €82 Average price | €256 Average price (fuel + tolls) |
5h 55m Average total duration Fastest 3h 55m Onboard + 2h 0m Additional time* | 15h 55m Average total duration 15h 25m Onboard + 30m Additional time* | 10h 12m Average total duration 9h 42m Onboard + 30m Additional time* | 22h 7m Average total duration 21h 7m Onboard + 1h 0m Additional time* | 10h 27m Average total duration (door-to-door) |
2.2 - 4.3kg CO2 emissions | 0.7 - 1.8kg CO2 emissions Lowest | - CO2 emissions | - CO2 emissions | - CO2 emissions |
![]() Most popular airline | ![]() Most popular bus company | ![]() 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.
Compare ways to travel from Milan to Barcelona
Compare the available ways to get from Milan to Barcelona, with the key details around price, speed, convenience, and direct service.
This is compared to other travel options from Milan to Barcelona:
A train is €2 less than a bus for this route with tickets for a bus from Milan to Barcelona costing on average €78.
A train is €6 less than a ferry for this route with tickets for a ferry from Milan to Barcelona costing on average €82.
A train is €294 less than a flight for this route with tickets for a flight from Milan to Barcelona costing on average €370.
Other travel options to Barcelona take longer:
Train takes on average 10h 12m.
Bus takes on average 15h 55m.
Ferry takes on average 22h 7m.
You'll arrive about 6h 32m sooner (3h 55m by flight vs 10h 27m by car). Tickets start at around €370 compared to roughly €256 in fuel and tolls — a bit more, but you get time back and avoid a long drive.
Driving makes more sense if you're travelling as a group, want flexibility on timing, or plan to stop en route.
Travel optionsfrom Milan to Barcelona
How to get from Milan to Barcelona by train, bus or flight.
Our recommendation
The best way to travel from Milan to Barcelona is by taking a bus because it’s the best combination of price and speed.
5710 · 31415:30 PM 30h15 Milano, Autostazione Lampugnano 11:45 PM Barcelona, Estació d'Autobusos Nord €60 1 One-way 1 transfer
Cheapest
5710 · 31415:30 PM 30h15 Milano, Autostazione Lampugnano 11:45 PM Barcelona, Estació d'Autobusos Nord €60 1 One-way 1 transfer
Fastest
FR 8475:45 AM 1h35 Milan Bergamo Orio al Serio Airport 7:20 AM Barcelona El Prat Airport €179 1 One-way 0 transfers
Other options
FlixBus · FlixBus10:30 AM 18h45 Milano, San Donato - Settore B (Viale Giuseppe Impastato) 5:15 AM Barcelona, Estació d'Autobusos Nord €86 1 One-way 1 transfer
FlixBus · FlixBus10:20 AM 19h50 Milano, Milan Linate Airport 6:10 AM Barcelona, Estació d'Autobusos Nord €86 1 One-way 1 transfer
FlixBus · FlixBus10:30 PM 18h00 Milano, Autostazione Lampugnano 4:30 PM Barcelona, Estació d'Autobusos Nord €88 1 One-way 1 transfer
AF1731 · AF14486:30 PM 4h25 Milan Malpensa Airport 10:55 PM Barcelona El Prat Airport €217 1 One-way 1 transfer
AF1331 · AF14483:55 PM 7h00 Milan Malpensa Airport 10:55 PM Barcelona El Prat Airport €217 1 One-way 1 transfer
AF1013 · AF14482:55 PM 8h00 Milan Linate Airport 10:55 PM Barcelona El Prat Airport €220 1 One-way 1 transfer
Find all the dates and times for this journey by train, bus, flight, and ferry .
Compare prices and tickets Prices for trains, buses and flights
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.
How to get from Milan to Barcelona
The Best Way According to our Users
More than 1,000 travel companies trust us to sell their tickets all in one place.
FAQs: Travel from Milan to Barcelona
Travel to Barcelona easily. Whether you want fast, cheap or something entirely different, our travel experts have collected everything you need to know so you can find the best option from Milan to Barcelona.

This is compared to other travel options from Milan to Barcelona:
A train is €2 less than a bus for this route with tickets for a bus from Milan to Barcelona costing on average €78.
A train is €6 less than a ferry for this route with tickets for a ferry from Milan to Barcelona costing on average €82.
A train is €294 less than a flight for this route with tickets for a flight from Milan to Barcelona costing on average €370.
Other travel options to Barcelona take longer:
Train takes on average 10h 12m.
Bus takes on average 15h 55m.
Ferry takes on average 22h 7m.
- Around 105 flights per day.
- Around 20 buses per day.
- Around 1 trains per day.
- Around 1 ferries per day.
However, we recommend checking specific travel dates for your route between Milan and Barcelona as scheduled services by train, bus, flight, and ferry can vary by season or day of the week.
- Flights mostly depart from Milan Linate Airport and arrive in Barcelona El Prat Airport.
- Trains mostly depart from Milan Centrale and arrive in Barcelona Sants.
- Buses mostly depart from Milano, Autostazione Lampugnano and arrive in Barcelona, Estació d'Autobusos Nord.
- Ferries mostly depart from Port of Genoa and arrive in Port of Barcelona.
- Travel with Gnv to go to Barcelona by ferry.
- Travel with Air France, ITA, Lufthansa, Vueling, KLM, Qatar Airways, British Airways, Iberia, Ryanair, easyJet, Brussels Airlines, Air Europa, Swiss, Lufthansa City Airlines, Malta Air, Turkish Airlines, Air Baltic, Austrian Airlines, Eurowings, Transavia France, BA Cityflyer, Avion Express Malta, asl airlines, Lufthansa Cityline, Norwegian Air Shuttle, Bulgaria Air, GetJet Airlines, Amelia, Helvetic Airways, Edelweiss Air, KLM Cityhopper, Air Serbia, Wizz Air to go to Barcelona by flight.
- Travel with FlixBus, BlaBlaCar Bus, Alsa, Itabus, Union Ivkoni International, Infobus, Tabita Tour to go to Barcelona by bus.
- Travel with AVE, Trenitalia to go to Barcelona by train.
- 1 direct ferries per day with Gnv.
- 19 direct flights per day with Vueling, Ryanair, easyJet, Malta Air, Wizz Air.
- 5 direct buses per day with FlixBus, BlaBlaCar Bus, Alsa, Itabus, Union Ivkoni International, Infobus, Tabita Tour.
Travelling from Milan to Barcelona: related information
Here are some other resources that might have the information you need


