Journey information
Overview: Milan to Bari flight
Flights from Milan to Bari depart on average 30 times per day, taking around 4h 38m. Cheap flight tickets for this journey start at £16 but you can travel from only £14 by coach.
There are 10 flights per day. The earliest flight runs at 00:01, the last at 23:55. The fastest flight covers the 786 km distance in 1h 25m. November is the cheapest month to fly.
Distance 786 km |
Average flight duration 4h 38m |
Cheapest ticket price £16 |
Flights per day 30 |
Direct flights 10 |
Fastest flight 1h 25m |
First flight 0:01 |
Last flight 23:55 |
Cheapest Month Nov |
Cheapest Day Sat |
High Season Jul - Sept |
Low Season Jan - Mar |
Busiest Day Wed |
Least Busy Day Sun |
Best time to book 35 days |
The cheapest and fastest flights from Milan to Bari
Cheapest price
£109
Average price
£263
Fastest journey
1 h 25 m
Average duration
1 h 27 m
Flights per day
57
Distance
786 km
The best way to find a cheap flight ticket from Milan to Bari is to book your journey as far in advance as possible and to avoid travelling at rush hour.
The average ticket from Milan to Bari will cost around £263 if you buy it on the day, but you can find cheap flight tickets today for only £109.
Of the 57 flights that leave Milan for Bari every day 10 travel direct so it’s quite easy to avoid journeys where you’ll have to change along the way.
These direct flights cover the 786 km distance in an average of 1 h 27 m but if you time it right, some flights will get you there in just 1 h 25 m .
The slowest flights will take 1 h 30 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.
AZ2061 · AZ161717:0017h35Milan Linate Airport10:35Bari Palese Airport£1091One-way1 change
AZ2133 · AZ160713:005h40Milan Linate Airport18:40Bari Palese Airport£1091One-way1 change
AZ2109 · AZ160319:003h55Milan Linate Airport22:55Bari Palese Airport£1091One-way1 change
AZ2049 · AZ160714:004h40Milan Linate Airport18:40Bari Palese Airport£1091One-way1 change
AZ2029 · AZ16079:009h40Milan Linate Airport18:40Bari Palese Airport£1091One-way1 change
AZ163918:551h25Milan Linate Airport20:20Bari Palese Airport£1511One-way0 changes
AZ164716:351h25Milan Linate Airport18:00Bari Palese Airport£1691One-way0 changes
AZ16498:001h25Milan Linate Airport9:25Bari Palese Airport£2401One-way0 changes
FR 365317:151h30Milan Bergamo Orio al Serio Airport18:45Bari Palese Airport£1301One-way0 changes
FR 465812:251h30Milan Bergamo Orio al Serio Airport13:55Bari Palese Airport£1381One-way0 changes
Travel Information
Compare coach, train and flight for Milan to Bari
Omio recommends booking the coach as it is the most popular option from Milan to Bari among Omio's users. If you are prioritising price take the coach with prices starting from £14. For those with little time consider booking a flight which can get you there in 4h 38m. 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 coach costs an average of £14, and a flight costs an average of £16.
Distance: 786 km
Compare flight with
| Flight | Most popular Coach | Train |
|---|---|---|
£117 Average Price | £31 Average Price Cheapest | £68 Average Price |
7h 38m Average total duration Fastest 4h 38m Onboard + 3h 0m Additional time* | 11h 30m Average total duration 11h 0m Onboard + 30m Additional time* | 7h 54m Average total duration 7h 24m Onboard + 30m Additional time* |
- CO2 emissions | 0.8 - 2.0kg CO2 emissions | 0.2 - 0.7kg CO2 emissions Lowest |
![]() Most popular airline | ![]() Most popular bus company | ![]() Most popular train company |
Direct Options | Direct Options | Direct Options |
Additional time: Average total travel duration to departure point, security checks and transfers.
Live departures
Milan to Bari flight times
The table below shows live departures for Milan to Bari flights for tomorrow, Friday 17 April. You can also manually refresh the results below to see updated flight journeys.
| Provider | Departs | Duration | Arrives | Changes | Tickets |
|---|---|---|---|---|---|
AZ1285 · AZ1264+ Leonardo express 4647+ FRECCIAROSSA 1000 8323 | 6:20 Milan Linate Airport | 15h59 | 22:19 Bari Centrale | 3 changes | |
AZ1285 · AZ1264+ Leonardo express 4625+ FRECCIAROSSA 1000 8315 | 6:20 Milan Linate Airport | 13h00 | 19:20 Bari Centrale | 3 changes | |
AZ1285 · AZ1264+ Leonardo express 4631+ FRECCIAROSSA 1000 8317 | 6:20 Milan Linate Airport | 14h00 | 20:20 Bari Centrale | 3 changes | |
AZ1629 · AZ1624+ Leonardo express 4631+ FRECCIAROSSA 1000 8317 | 6:30 Milan Linate Airport | 13h50 | 20:20 Bari Centrale | 3 changes | |
AZ1629 · AZ1624+ Leonardo express 4647+ FRECCIAROSSA 1000 8323 | 6:30 Milan Linate Airport | 15h49 | 22:19 Bari Centrale | 3 changes | |
AZ1629 · AZ1624+ Leonardo express 4625+ FRECCIAROSSA 1000 8315 | 6:30 Milan Linate Airport | 12h50 | 19:20 Bari Centrale | 3 changes | |
AZ2013+ Leonardo express 4625+ FRECCIAROSSA 1000 8315 | 7:00 Milan Linate Airport | 12h20 | 19:20 Bari Centrale | 2 changes | |
AZ2013 · AZ1603 | 7:00 Milan Linate Airport | 15h55 | 22:55 Bari Palese Airport | 1 change | |
AZ2013+ Regionale 83087+ Intercity 1589 · Intercity 715 | 7:00 Milan Linate Airport | 16h00 | 23:00 Bari Centrale | 3 changes | |
AZ2013 · AZ1607 | 7:00 Milan Linate Airport | 11h40 | 18:40 Bari Palese Airport | 1 change | |
AZ2013+ Leonardo express 4631+ FRECCIAROSSA 1000 8317 | 7:00 Milan Linate Airport | 13h20 | 20:20 Bari Centrale | 2 changes | |
AZ450 · AZ437+ Leonardo express 4631+ FRECCIAROSSA 1000 8317 | 7:30 Milan Linate Airport | 12h50 | 20:20 Bari Centrale | 3 changes | |
AZ450 · AZ437+ Leonardo express 4625+ FRECCIAROSSA 1000 8315 | 7:30 Milan Linate Airport | 11h50 | 19:20 Bari Centrale | 3 changes | |
AZ450 · AZ437+ Leonardo express 4647+ FRECCIAROSSA 1000 8323 | 7:30 Milan Linate Airport | 14h49 | 22:19 Bari Centrale | 3 changes | |
AZ2021+ Leonardo express 4647+ FRECCIAROSSA 1000 8323 | 8:00 Milan Linate Airport | 14h19 | 22:19 Bari Centrale | 2 changes | |
AZ2021 · AZ1603 | 8:00 Milan Linate Airport | 14h55 | 22:55 Bari Palese Airport | 1 change | |
AZ1649 | 8:00 Milan Linate Airport | 1h25 | 9:25 Bari Palese Airport | 0 changesdirect | |
AZ2021+ Leonardo express 4625+ FRECCIAROSSA 1000 8315 | 8:00 Milan Linate Airport | 11h20 | 19:20 Bari Centrale | 2 changes | |
AZ2021+ Leonardo express 4631+ FRECCIAROSSA 1000 8317 | 8:00 Milan Linate Airport | 12h20 | 20:20 Bari Centrale | 2 changes | |
AZ2021 · AZ1607 | 8:00 Milan Linate Airport | 10h40 | 18:40 Bari Palese Airport | 1 change | |
AZ7652 · AZ159+ Leonardo express 4631+ FRECCIAROSSA 1000 8317 | 8:35 Milan Malpensa Airport | 11h45 | 20:20 Bari Centrale | 3 changes | |
AZ7652 · AZ159+ Regionale 83087+ Intercity 1589 | 8:35 Milan Malpensa Airport | 14h25 | 23:00 Bari Centrale | 4 changes | |
AZ7652 · AZ159+ Leonardo express 4647+ FRECCIAROSSA 1000 8323 | 8:35 Milan Malpensa Airport | 13h44 | 22:19 Bari Centrale | 3 changes | |
AZ2029+ Leonardo express 4631+ FRECCIAROSSA 1000 8317 | 9:00 Milan Linate Airport | 11h20 | 20:20 Bari Centrale | 2 changes | |
AZ2029 · AZ1607 | 9:00 Milan Linate Airport | 9h40 | 18:40 Bari Palese Airport | 1 change | |
AZ2029+ Leonardo express 4625+ FRECCIAROSSA 1000 8315 | 9:00 Milan Linate Airport | 10h20 | 19:20 Bari Centrale | 2 changes | |
AZ2029 · AZ1603 | 9:00 Milan Linate Airport | 13h55 | 22:55 Bari Palese Airport | 1 change | |
AZ2029+ Leonardo express 4647+ FRECCIAROSSA 1000 8323 | 9:00 Milan Linate Airport | 13h19 | 22:19 Bari Centrale | 2 changes | |
FR 278 | 10:20 Milan Malpensa Airport | 1h40 | 12:00 Bari Palese Airport | 0 changesdirect | |
AZ2045 · AZ1603 | 11:30 Milan Linate Airport | 11h25 | 22:55 Bari Palese Airport | 1 change | |
AZ2045+ Leonardo express 4631+ FRECCIAROSSA 1000 8317 | 11:30 Milan Linate Airport | 8h50 | 20:20 Bari Centrale | 2 changes | |
AZ2045 · AZ1607 | 11:30 Milan Linate Airport | 7h10 | 18:40 Bari Palese Airport | 1 change | |
AZ2045+ Leonardo express 4647+ FRECCIAROSSA 1000 8323 | 11:30 Milan Linate Airport | 10h49 | 22:19 Bari Centrale | 2 changes | |
AZ2045+ Leonardo express 4625+ FRECCIAROSSA 1000 8315 | 11:30 Milan Linate Airport | 7h50 | 19:20 Bari Centrale | 2 changes | |
U23527 | 12:05 Milan Malpensa Airport | 1h35 | 13:40 Bari Palese Airport | 0 changesdirect | |
FR 4658 | 12:25 Milan Bergamo Orio al Serio Airport | 1h30 | 13:55 Bari Palese Airport | 0 changesdirect | |
AZ2133 · AZ1607 | 13:00 Milan Linate Airport | 5h40 | 18:40 Bari Palese Airport | 1 change | |
AZ2133+ Leonardo express 4647+ FRECCIAROSSA 1000 8323 | 13:00 Milan Linate Airport | 9h19 | 22:19 Bari Centrale | 2 changes | |
AZ2133+ Regionale 83087+ Intercity 1589 · Intercity 715 | 13:00 Milan Linate Airport | 10h00 | 23:00 Bari Centrale | 3 changes | |
AZ2133 · AZ1603 | 13:00 Milan Linate Airport | 9h55 | 22:55 Bari Palese Airport | 1 change | |
AZ2049+ Leonardo express 4647+ FRECCIAROSSA 1000 8323 | 14:00 Milan Linate Airport | 8h19 | 22:19 Bari Centrale | 2 changes | |
AZ2049 · AZ1607 | 14:00 Milan Linate Airport | 4h40 | 18:40 Bari Palese Airport | 1 change | |
AZ2049 · AZ1617 | 14:00 Milan Linate Airport | 20h35 | 10:35 Bari Palese Airport | 1 change | |
AZ2049 · AZ1603 | 14:00 Milan Linate Airport | 8h55 | 22:55 Bari Palese Airport | 1 change | |
AZ1671 | 14:00 Milan Linate Airport | 1h30 | 15:30 Bari Palese Airport | 0 changesdirect | |
AZ2071 · AZ1603 | 16:00 Milan Linate Airport | 6h55 | 22:55 Bari Palese Airport | 1 change | |
AZ2071 · AZ1617 | 16:00 Milan Linate Airport | 18h35 | 10:35 Bari Palese Airport | 1 change | |
AZ1647 | 16:35 Milan Linate Airport | 1h25 | 18:00 Bari Palese Airport | 0 changesdirect | |
AZ2061 · AZ1617 | 17:00 Milan Linate Airport | 17h35 | 10:35 Bari Palese Airport | 1 change | |
AZ2061 · AZ1603 | 17:00 Milan Linate Airport | 5h55 | 22:55 Bari Palese Airport | 1 change | |
FR 3653 | 17:15 Milan Bergamo Orio al Serio Airport | 1h30 | 18:45 Bari Palese Airport | 0 changesdirect | |
AZ1639 | 18:55 Milan Linate Airport | 1h25 | 20:20 Bari Palese Airport | 0 changesdirect | |
AZ2109 · AZ1603 | 19:00 Milan Linate Airport | 3h55 | 22:55 Bari Palese Airport | 1 change | |
AZ2109 · AZ1617 | 19:00 Milan Linate Airport | 15h35 | 10:35 Bari Palese Airport | 1 change | |
AZ2109 · AZ1613 | 19:00 Milan Linate Airport | 19h35 | 14:35 Bari Palese Airport | 1 change | |
FR 2770 | 20:55 Milan Malpensa Airport | 1h40 | 22:35 Bari Palese Airport | 0 changesdirect | |
FR 4132 | 21:35 Milan Bergamo Orio al Serio Airport | 1h30 | 23:05 Bari Palese Airport | 0 changesdirect | |
This is the last flight of the day. | |||||
Find all the dates and times for this journey
How far in advance should I book flight tickets from Milan to Bari?
Compare prices and tickets Milan to Bari by coach, train or flight
Compare coach, 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.
18 Apr
19 Apr
20 Apr
21 Apr
22 Apr
23 Apr
24 Apr
25 Apr
26 Apr
27 Apr
28 Apr
29 Apr
30 Apr
01 May
02 May
03 May
04 May
05 May
06 May
07 May
08 May
Why should you book Milan to Bari flights with Omio?
Why book with Omio vs Malta Air?
- Compare with other providers: On Omio, you can not only buy tickets for Malta Air, but also compare tickets for the likes of Ryanair, easyJet or ITA to find the best option for your trip from Milan to Bari.
- Designed for International Travelers: Omio is in your language including 24/7 customer service and offers multiple payment options, including PayPal, credit cards, and bank transfer, in your preferred currency.
- Compare all your options: Omio allows you to compare Malta Air with all available travel options, which are bus, train and flight to ensure you get the best deal for traveling from Milan to Bari.
Why book with Omio over Skyscanner, Kayak or Trip?
- Compare with other providers: On Omio, you can also compare tickets for the likes of Ryanair, easyJet or ITA to find the best option for your trip from Milan to Bari.
- Multiple modes of transport: Omio allows you to compare travel options including bus, train and flight to find the ideal travel option from Milan to Bari.
ReviewsReviews for the flight from Milan to Bari

Airlines: Malta Air, Ryanair, easyJet, ITA from Milan to BariFind the best flights between Milan to Bari with Omio's travel partners Malta Air, Ryanair, easyJet, ITA from £14. We can find you the best deals, schedules and tickets when comparing and booking the best trip.
ITA
Malta Air
easyJet
Ryanair
FAQs: Milan to Bari flights
Find answers to the most common questions about traveling from Milan to Bari by flight. 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 flight, the cheapest option, or tips for making the most of your visit at Bari, this guide helps you travel smarter and with confidence.

popular airports
Important Stations and Airports in Milan and Bari
- Free Wi-Fi available throughout the airport.
- Shops available, including Duty-Free and WHSmith, located in the departures area.
- Parking available in P1, P2, and P3 lots, approximately 2.5€ per hour.
- Available outside the terminal.
- Ramps, assistance.
- Available throughout the airport.
- Yes
- Lounge available, Sala Leonardo Lounge, access with membership or fee.
- Located in the arrivals area, near baggage claim.
- Bus 73
- Bus X73
- Free Wi-Fi available throughout the airport.
- Shops available in both terminals, including duty-free and fashion brands like Gucci and Prada.
- Parking available at Terminal 1 and Terminal 2, approximately 2.5€ per hour.
- Available outside the terminal.
- Elevators, ramps.
- Available throughout the airport.
- Yes
- Lounges available in Terminal 1, including Sala Montale and Club SEA.
- Located in both terminals, near baggage claim.
- Train: Malpensa Express
- Bus: Terravision, Autostradale, Malpensa Shuttle
- Free Wi-Fi available throughout the airport.
- Shops available, including duty-free and fashion stores, located in the departures area.
- Parking available near the terminal, approximately 3€ per hour.
- Available outside the terminal.
- Elevators, ramps.
- Available throughout the airport.
- Yes
- Lounge available, with access for a fee or membership.
- Located in the arrivals area.
- Bus: Line 1, Line 5
- Train: NA
- Metro: NA
- Free Wi-Fi available throughout the airport.
- Shops available, including duty-free and local products in the departures area.
- Parking available near the terminal, approximately 2€ per hour.
- Available outside the terminal.
- Elevators, ramps.
- Available throughout the airport.
- Lounge available, offering refreshments and comfortable seating.
- Located in the arrivals area.
- Bus: 16, 33, 50
- Train: FM2
More options for your journey from Milan to Bari
Here are some other resources that might have the information you need







