Travel Information
Compare bus, train, and flight for Bari to Milan
Omio recommends booking the bus as it is the most popular option from Bari to Milan among Omio's users. If you are prioritising price take the bus with prices starting from $21. For those with little time consider booking a flight which can get you there in 3h 10m. In case you are seeking to minimise your carbon footprint the train is your best bet as it emits only 0.2 - 0.7kg. The ticket price range depends on the travel mode: a bus costs an average of $21, and a flight costs an average of $21.
Distance: 488 miles (786 km)
Compare bus with
Most popular Bus | Train | Flight |
|---|---|---|
$42 Average price Cheapest | $91 Average price | $131 Average price |
10h 54m Average total duration 10h 24m Onboard + 30m Additional time* | 9h 11m Average total duration 8h 41m Onboard + 30m Additional time* | 6h 10m Average total duration Fastest 3h 10m Onboard + 3h 0m Additional time* |
0.8 - 2.0kg CO2 emissions | 0.2 - 0.7kg CO2 emissions Lowest | - CO2 emissions |
![]() Most popular bus company | ![]() Most popular train company | ![]() Most popular airline |
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 Bari to Milan:
A bus is $48 (€39) less than a train for this route with tickets for a train from Bari to Milan costing on average $91 (€74).
A bus is $88 (€72) less than a flight for this route with tickets for a flight from Bari to Milan costing on average $131 (€106).
Other travel options to Milan take longer:
Train takes on average 8h 41m.
Bus takes on average 10h 24m.
Travel optionsfrom Bari to Milan
How to get from Bari to Milan by train, bus or flight.
Our recommendation
The best way to travel from Bari to Milan is by taking a bus because it’s the best combination of price and speed.
22066:35 PM11h35Bari, Via Capruzzi (Terminal Bus Bari)6:10 AMMilano, Autostazione Lampugnano$161One-way0 transfers
Cheapest
22066:35 PM11h35Bari, Via Capruzzi (Terminal Bus Bari)6:10 AMMilano, Autostazione Lampugnano$161One-way0 transfers
Fastest
AZ16488:10 AM1h25Bari Palese Airport9:35 AMMilan Linate Airport$1711One-way0 transfers
Other options
InterCityNotte 7589:30 PM10h45Bari Centrale8:15 AMMilan Centrale$851One-way0 transfers
InterCityNotte 758+
Regionale TTPER 88164 · Regionale TTPER 24529:30 PM10h15Bari Centrale7:45 AMMilan Centrale$881One-way2 transfers
99286:50 AM8h30Bari Centrale3:20 PMMilan Centrale$1291One-way0 transfers
24225:40 PM14h00Bari, Via Capruzzi (Terminal Bus Bari)7:40 AMMilano, San Donato - Settore B (Viale Giuseppe Impastato)$161One-way0 transfers
FlixBus7:30 AM12h30Bari, Via Capruzzi (Terminal Bus Bari)8:00 PMMilano, San Donato - Settore B (Viale Giuseppe Impastato)$171One-way0 transfers
FlixBus7:30 AM13h20Bari, Via Capruzzi (Terminal Bus Bari)8:50 PMMilano, Autostazione Lampugnano$171One-way0 transfers
FR 2777:50 AM1h40Bari Palese Airport9:30 AMMilan Malpensa Airport$1241One-way0 transfers
FR 46685:50 AM1h30Bari Palese Airport7:20 AMMilan Bergamo Orio al Serio Airport$1251One-way0 transfers
U236408:35 AM1h35Bari Palese Airport10:10 AMMilan Malpensa Airport$1491One-way0 transfers
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 bus, train, and flight 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.
Aug 02
Aug 03
Aug 04
Aug 05
Aug 06
Aug 07
Aug 08
Aug 09
Aug 10
Aug 11
Aug 12
Aug 13
Aug 14
Aug 15
Aug 16
Aug 17
Aug 18
Aug 19
Aug 20
Aug 21
Aug 22
More than 1,000 travel companies trust us to sell their tickets all in one place.
FAQs: Travel from Bari to Milan
Travel to Milan 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 Bari to Milan.

This is compared to other travel options from Bari to Milan:
A bus is $48 (€39) less than a train for this route with tickets for a train from Bari to Milan costing on average $91 (€74).
A bus is $88 (€72) less than a flight for this route with tickets for a flight from Bari to Milan costing on average $131 (€106).
Other travel options to Milan take longer:
Train takes on average 8h 41m.
Bus takes on average 10h 24m.
- Around 26 buses per day.
- Around 22 flights per day.
- Around 22 trains per day.
However, we recommend checking specific travel dates for your route between Bari and Milan as scheduled services by bus, train, and flight can vary by season or day of the week.
- Flights mostly depart from Bari Palese Airport and arrive in Milan Linate Airport.
- Trains mostly depart from Bari Centrale and arrive in Milan Centrale.
- Buses mostly depart from Bari, Via Capruzzi (Terminal Bus Bari) and arrive in Milano, Autostazione Lampugnano.
- Travel with Malta Air, easyJet, ITA, Ryanair to go to Milan by flight.
- Travel with Frecciarossa, Intercity Notte, Intercity, Italo, Frecciargento to go to Milan by train.
- Travel with Itabus, Marino Autolinee, FlixBus, BlaBlaCar to go to Milan by bus.
- 9 direct flights per day with Malta Air, easyJet, ITA, Ryanair.
- 13 direct trains per day with Frecciarossa, Intercity Notte, Intercity, Italo.
- 10 direct buses per day with Itabus, Marino Autolinee, FlixBus, BlaBlaCar.
Travelling from Bari to Milan: related information
Here are some other resources that might have the information you need


