Travel Information
Compare train, bus, and flight for Milan to Bari
Omio recommends booking the flight as it is the most popular option from Milan to Bari among Omio's users. If you are prioritising price, take the bus, with an average ticket price of €52 For those with little time, consider booking a flight, which has an average total journey time of 3h 59m. If you are seeking to minimise your carbon footprint, the train is your best option, with estimated CO2 emissions of 0.2 - 0.7kg. Average ticket prices depend on the travel mode: a bus costs an average of €52, while a flight costs an average of €156.
Distance: 786 km
Compare flight with
Most popular Flight | Train | Bus | Driving |
|---|---|---|---|
€156 Average price | €68 Average price | €52 Average price Cheapest | €225 Average price (fuel + tolls) |
3h 59m Average total duration Fastest 1h 59m Onboard + 2h 0m Additional time* | 8h 33m Average total duration 8h 3m Onboard + 30m Additional time* | 13h 36m Average total duration 13h 6m Onboard + 30m Additional time* | 9h 4m Average total duration (door-to-door) |
- CO2 emissions | 0.2 - 0.7kg CO2 emissions Lowest | 0.8 - 2.0kg CO2 emissions | - CO2 emissions |
![]() Most popular airline | ![]() Most popular train company | ![]() Most popular bus company | Your own car or car rental |
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 Milan to Bari:
A bus is €16 less than a train for this route with tickets for a train from Milan to Bari costing on average €68.
A bus is €104 less than a flight for this route with tickets for a flight from Milan to Bari costing on average €156.
Other travel options to Bari take longer:
Train takes on average 8h 33m.
Bus takes on average 13h 36m.
Travel optionsfrom Milan to Bari
How to get from Milan to Bari by train, bus or flight.
Our recommendation
The best way to travel from Milan to Bari is by taking a bus because it’s the best combination of price and speed.
FlixBus8:15 AM12h30Milano, San Donato - Settore B (Viale Giuseppe Impastato)8:45 PMBari, Via Capruzzi (Terminal Bus Bari)€221One-way0 transfers
Cheapest
FlixBus8:15 AM12h30Milano, San Donato - Settore B (Viale Giuseppe Impastato)8:45 PMBari, Via Capruzzi (Terminal Bus Bari)€221One-way0 transfers
Fastest
AZ16551:20 PM1h25Milan Linate Airport2:45 PMBari Palese Airport€1681One-way0 transfers
Other options
InterCityNotte 350517:45 PM11h15Milan Centrale7:00 AMBari Centrale€691One-way0 transfers
Intercity 6035:25 AM9h40Milan Centrale3:05 PMBari Centrale€801One-way0 transfers
Intercity 6079:10 AM9h48Milan Porta Garibaldi6:58 PMBari Centrale€801One-way0 transfers
FlixBus7:25 AM13h20Milano, Autostazione Lampugnano8:45 PMBari, Via Capruzzi (Terminal Bus Bari)€221One-way0 transfers
201 · 2079:10 AM11h30Milano, San Donato - Settore B (Viale Giuseppe Impastato)8:40 PMBari, Via Capruzzi (Terminal Bus Bari)€371One-way1 transfer
201 · 2078:25 AM12h15Milano, Autostazione Lampugnano8:40 PMBari, Via Capruzzi (Terminal Bus Bari)€371One-way1 transfer
FR 2785:45 AM1h40Milan Malpensa Airport7:25 AMBari Palese Airport€1001One-way0 transfers
FR 365310:55 AM1h30Milan Bergamo Orio al Serio Airport12:25 PMBari Palese Airport€1141One-way0 transfers
AZ2013 · AZ16177:00 AM3h35Milan Linate Airport10:35 AMBari Palese Airport€1231One-way1 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, 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.
Sep 27
Sep 28
Sep 29
Sep 30
Oct 01
Oct 02
Oct 03
Oct 04
Oct 05
Oct 06
Oct 07
Oct 08
Oct 09
Oct 10
Oct 11
Oct 12
Oct 13
Oct 14
Oct 15
Oct 16
Oct 17
More than 1,000 travel companies trust us to sell their tickets all in one place.
FAQs: Travel from Milan to Bari
Travel to Bari 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 Bari.

This is compared to other travel options from Milan to Bari:
A bus is €16 less than a train for this route with tickets for a train from Milan to Bari costing on average €68.
A bus is €104 less than a flight for this route with tickets for a flight from Milan to Bari costing on average €156.
Other travel options to Bari take longer:
Train takes on average 8h 33m.
Bus takes on average 13h 36m.
- Around 30 buses per day.
- Around 26 flights per day.
- Around 21 trains per day.
However, we recommend checking specific travel dates for your route between Milan and Bari as scheduled services by train, bus, and flight can vary by season or day of the week.
- Flights mostly depart from Milan Linate Airport and arrive in Bari Palese Airport.
- Trains mostly depart from Milan Centrale and arrive in Bari Centrale.
- Buses mostly depart from Milano, Autostazione Lampugnano and arrive in Bari, Via Capruzzi (Terminal Bus Bari).
- Travel with FlixBus, Marino Autolinee, Itabus to go to Bari by bus.
- Travel with Intercity, Frecciarossa, Italo, Frecciargento, Intercity Notte to go to Bari by train.
- Travel with Icelandair, Neos Air, Eurowings, Avion Express Malta, Luxair, Bulgaria Air, Malta Air, ITA, Ryanair, easyJet to go to Bari by flight.
- 10 direct buses per day with FlixBus, Marino Autolinee, Itabus.
- 14 direct trains per day with Intercity, Frecciarossa, Italo, Intercity Notte.
- 10 direct flights per day with Neos Air, Malta Air, ITA, Ryanair, easyJet.
Travelling from Milan to Bari: related information
Here are some other resources that might have the information you need

