How to travel from Bari to Milan

Sun, Aug 02
+ Add return
Travel by bus, train, flight with
Itabus
Malta Air
Frecciarossa
Intercity Notte
Marino Autolinee
1,000+ more
Itabus
Malta Air
Frecciarossa
Intercity Notte
Marino Autolinee
1,000+ more
QR-Code
Scan to get our free app
Use our app to get live travel updates and book mobile tickets for trains, buses, flights, and ferries.
App Store
rate4.9
42K ratings
Google Play
rate4.6
136K reviews

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

Marino Autolinee

Most popular bus company

Frecciarossa

Most popular train company

Malta Air

Most popular airline

Direct Options

Direct Options

Direct Options

Additional time: Average total travel duration to departure point, security checks and transfers.

The cheapest way to travel from Bari to Milan is a bus with an average price of $42 (€35).

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).

The fastest way to travel from Bari to Milan is by flight with an average journey time of 3h 10m.

Other travel options to Milan take longer:

Train takes on average 8h 41m.

Bus takes on average 10h 24m.

It's helpful to compare your options as there are 3 ways to travel between Bari and Milan including taking a bus, train, and flight.

Travel options
from Bari to Milan

How to get from Bari to Milan by train, bus or flight.

Our recommendation

bus

The best way to travel from Bari to Milan is by taking a bus because it’s the best combination of price and speed.

  • Itabus2206
    6:35 PM11h35
    Bari, Via Capruzzi (Terminal Bus Bari)
    6:10 AMMilano, Autostazione Lampugnano
    $161One-way
    0 transfers

Cheapest

  • Itabus2206
    6:35 PM11h35
    Bari, Via Capruzzi (Terminal Bus Bari)
    6:10 AMMilano, Autostazione Lampugnano
    $161One-way
    0 transfers

Fastest

  • ITAAZ1648
    8:10 AM1h25
    Bari Palese Airport
    9:35 AMMilan Linate Airport
    $1711One-way
    0 transfers

Other options

  • Intercity NotteInterCityNotte 758
    9:30 PM10h45
    Bari Centrale
    8:15 AMMilan Centrale
    $851One-way
    0 transfers
  • Intercity NotteInterCityNotte 758+RegionaleRegionale TTPER 88164 · Regionale TTPER 2452
    9:30 PM10h15
    Bari Centrale
    7:45 AMMilan Centrale
    $881One-way
    2 transfers
  • Italo9928
    6:50 AM8h30
    Bari Centrale
    3:20 PMMilan Centrale
    $1291One-way
    0 transfers
  • Itabus2422
    5:40 PM14h00
    Bari, Via Capruzzi (Terminal Bus Bari)
    7:40 AMMilano, San Donato - Settore B (Viale Giuseppe Impastato)
    $161One-way
    0 transfers
  • FlixBusFlixBus
    7:30 AM12h30
    Bari, Via Capruzzi (Terminal Bus Bari)
    8:00 PMMilano, San Donato - Settore B (Viale Giuseppe Impastato)
    $171One-way
    0 transfers
  • FlixBusFlixBus
    7:30 AM13h20
    Bari, Via Capruzzi (Terminal Bus Bari)
    8:50 PMMilano, Autostazione Lampugnano
    $171One-way
    0 transfers
  • Malta AirFR 277
    7:50 AM1h40
    Bari Palese Airport
    9:30 AMMilan Malpensa Airport
    $1241One-way
    0 transfers
  • Malta AirFR 4668
    5:50 AM1h30
    Bari Palese Airport
    7:20 AMMilan Bergamo Orio al Serio Airport
    $1251One-way
    0 transfers
  • easyJetU23640
    8:35 AM1h35
    Bari Palese Airport
    10:10 AMMilan Malpensa Airport
    $1491One-way
    0 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.

Sun
Aug 02
Mon
Aug 03
Tue
Aug 04
Wed
Aug 05
Thu
Aug 06
Fri
Aug 07
Sat
Aug 08
Sun
Aug 09
Mon
Aug 10
Tue
Aug 11
Wed
Aug 12
Thu
Aug 13
Fri
Aug 14
Sat
Aug 15
Sun
Aug 16
Mon
Aug 17
Tue
Aug 18
Wed
Aug 19
Thu
Aug 20
Fri
Aug 21
Sat
Aug 22

More than 1,000 travel companies trust us to sell their tickets all in one place.

Trenitalia
Easyjet
Deutsche Bahn
SNCF

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.

FAQs
There are 3 options to travel between Bari and Milan including taking a bus, train, and flight.
The cheapest way to travel from Bari to Milan is a bus with an average price of $42 (€35).

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).

The fastest way to travel from Bari to Milan is by flight with an average journey time of 3h 10m.

Other travel options to Milan take longer:

Train takes on average 8h 41m.

Bus takes on average 10h 24m.

The distance from Bari to Milan is approximately 488 miles (786 km).
The average frequency per day from Bari to Milan is:
  • 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.

These are the most popular departure and arrival points from Bari to Milan:
  • 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.
If finding a good deal is your main consideration for your trip from Bari to Milan, then we'll help you find the best value travel companies for you:
  • 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.
Yes, there are direct services available from Bari to Milan with the following travel companies:
  • 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.
Omio customers who travel from Bari to Milan often also extend their vacation to go to Paris, Rome, Venice, Como, Florence. Omio can help you plan your trip by finding the best connections between Milan and these popular destinations at a great price.
HomeTravelTravel to ItalyTravel to MilanHow to travel from Bari to Milan

The Omio App Makes Travel Planning Easy

We’ll get you where you want to go. From live train updates to mobile tickets, our innovative app is the ideal way to plan and keep track of your travel.

ios-badge
android-badge
Hand With Phone