There are 9 ways to get from Milan to Ostuni by plane, bus, train (Trenitalia), train, or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly Milan Linate Airport to Brindisi Airport, bus
best- Fly from Milan Linate Airport (LIN) to Brindisi Airport (BDS)plane LIN - BDS
- Take the bus from Brindisi - via Nicola Brandi to Ostuni - p.zza Italiabus
4h 21m€59–184Train to Milano Malpensa Airport, fly to Brindisi Airport
cheapest- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Brindisi Airport (BDS)plane MXP - BDS
5h 3m€36–217Train via Bari
- Take the train from Milano Centrale to Bari Centraletrain Fr
- Take the train from Bari Centrale to Ostunitrain Re / ...
9h 8m€110–229Train, bus
- Take the train from Milano Centrale to Bologna centraletrain 9941 / ...
- Take the bus from Bologna Autostazione to Ostuni Rosa Marina Bus Stationbus Itabus
15h 19m€72–128Drive 961.8 km
- Drive from Milan to Ostunicar 961.8 km
8h 47m€156–225Bus to Il Caravaggio International Airport, fly to Brindisi Airport
- Take the bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airportbus
- Fly from Il Caravaggio International Airport (BGY) to Brindisi Airport (BDS)plane BGY - BDS
5h 5m€52–295Fly Milan Linate Airport to Bari Karol Wojtyła Airport, train
- Fly from Milan Linate Airport (LIN) to Bari Karol Wojtyła Airport (BRI)plane LIN - BRI
- Take the train from Bari Centrale to Brindisi Stazione Centraletrain
6h 40m€77–217Train (Trenitalia)
- Take the train from Milano Centrale to Brindisi Stazione Centraletrain Fr
9h 20m€107–228Bus
- Take the bus from Milano, San Donato M3 to Brindisibus 420
15h 44m€91–135
Milan to Ostuni by train and bus (Trenitalia)
Comparing Your Travel Options
The cheapest way to get from Milan to Ostuni is to train and fly which costs €35 - €220 and takes 5h 3m.
The fastest way to get from Milan to Ostuni is to fly and bus which takes 4h 21m and costs €55 - €190.
No, there is no direct bus from Milan to Ostuni. However, there are services departing from Milano, San Donato M3 and arriving at Ostuni via Brindisi. The journey, including transfers, takes approximately 15h 44m.
No, there is no direct train from Milan to Ostuni. However, there are services departing from Milano Centrale and arriving at Ostuni via Bari Centrale. The journey, including transfers, takes approximately 9h 8m.
The distance between Milan and Ostuni is 926 km. The road distance is 961.8 km.
The best way to get from Milan to Ostuni without a car is to train via Bari which takes 9h 8m and costs €110 - €230.
It takes approximately 4h 21m to get from Milan to Ostuni, including transfers.
Milan to Ostuni bus services, operated by FlixBus, depart from Milano, San Donato M3 station.
Milan to Ostuni train services, operated by Trenitalia Frecce, depart from Milano Centrale station.
The best way to get from Milan to Ostuni is to train via Bari which takes 9h 8m and costs €110 - €230. Alternatively, you can bus, which costs €90 - €140 and takes 15h 44m.
What companies run services between Milan, Italy and Ostuni, Italy?
You can take a train from Milano Centrale to Ostuni via Bari Centrale and Ostuni in around 9h 8m. Alternatively, FlixBus operates a bus from Milano, San Donato M3 to Brindisi once daily. Tickets cost €85–130 and the journey takes 14h 10m.
- Website
- ryanair.com
Flights from Milano Malpensa Airport to Brindisi Airport
- Ave. Duration
- 1h 45m
- When
- Monday, Friday, Saturday, Thursday, Sunday, and Tuesday
- Estimated price
- €45–190
Flights from Il Caravaggio International Airport to Brindisi Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- €40–270
- Website
- ita-airways.com
Flights from Milan Linate Airport to Brindisi Airport
- Ave. Duration
- 1h 37m
- When
- Every day
- Estimated price
- €55–180
Flights from Milan Linate Airport to Brindisi Airport via Rome
- Ave. Duration
- 3h 50m
- When
- Every day
- Estimated price
- €55–180
Flights from Milan Linate Airport to Bari Karol Wojtyła Airport
- Ave. Duration
- 1h 29m
- When
- Every day
- Estimated price
- €55–170
Flights from Milan Linate Airport to Bari Karol Wojtyła Airport via Rome
- Ave. Duration
- 3h 35m
- When
- Every day
- Estimated price
- €55–170
- Website
- easyjet.com
Flights from Milan Linate Airport to Brindisi Airport
- Ave. Duration
- 1h 40m
- When
- Monday and Thursday
- Estimated price
- €35–110
Flights from Milano Malpensa Airport to Brindisi Airport
- Ave. Duration
- 1h 47m
- When
- Every day
- Estimated price
- €30–160
- Phone
- +39 06 5210550
- Website
- Trenitalia Frecce
Train from Milano Centrale to Bari Centrale
- Ave. Duration
- 7h 39m
- Frequency
- Every 4 hours
- Estimated price
- €120–200
- Website
- Trenitalia Frecce
Train from Bari Centrale to Ostuni
- Ave. Duration
- 49 min
- Frequency
- Once daily
- Estimated price
- €10–18
- Website
- Trenitalia Frecce
Train from Bari Centrale to Brindisi Stazione Centrale
- Ave. Duration
- 59 min
- Frequency
- Hourly
- Estimated price
- €15–26
- Website
- Trenitalia Frecce
Train from Milano Centrale to Brindisi Stazione Centrale
- Ave. Duration
- 7h 52m
- Frequency
- 4 times a day
- Estimated price
- €130–230
- Website
- Trenitalia Frecce
- Phone
- +39 06 68475475
- Website
- Trenitalia Intercity
Train from Milano Centrale to Bari Centrale
- Ave. Duration
- 9h 41m
- Frequency
- 4 times a day
- Estimated price
- €90–170
- Website
- Trenitalia Intercity
Train from Bari Centrale to Ostuni
- Ave. Duration
- 53 min
- Frequency
- 3 times a day
- Estimated price
- €8–15
- Website
- Trenitalia Intercity
Train from Bari Centrale to Brindisi Stazione Centrale
- Ave. Duration
- 1h 16m
- Frequency
- 5 times a day
- Estimated price
- €12–22
- Website
- Trenitalia Intercity
Train from Milano Centrale to Brindisi Stazione Centrale
- Ave. Duration
- 11h 1m
- Frequency
- 4 times a day
- Estimated price
- €100–190
- Website
- Trenitalia Intercity
- Phone
- +39 06 8937 1892
- Website
- Italo Treno
Train from Milano Centrale to Bari Centrale
- Ave. Duration
- 8h 30m
- Frequency
- Once daily
- Estimated price
- €100–170
- Website
- Italo Treno
Train from Milano Centrale to Bologna centrale
- Ave. Duration
- 1h 4m
- Frequency
- Hourly
- Estimated price
- €25–45
- Website
- Italo Treno
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Bari Centrale to Ostuni
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- €9–13
- Website
- Trenitalia
Train from Bari Centrale to Brindisi Stazione Centrale
- Ave. Duration
- 1h 22m
- Frequency
- Hourly
- Estimated price
- €13–19
- Website
- Trenitalia
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
- Phone
- 800232042, 3667880781
- Website
- stpbrindisi.it
Bus from Brindisi - via Nicola Brandi to Ostuni - p.zza Italia
- Ave. Duration
- 35 min
- Frequency
- Hourly
- Estimated price
- €1
- Schedules at
- stpbrindisi.it
- Phone
- +39 06 88 93 82 32
- Website
- Itabus S.p.A.
Bus from Bologna Autostazione to Ostuni Rosa Marina Bus Station
- Ave. Duration
- 12h 20m
- Frequency
- Once daily
- Estimated price
- €45–85
- Website
- Itabus S.p.A.
- [email protected]
- Website
- TERRAVISION
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–23
- Website
- TERRAVISION
- Phone
- 035.319366
- [email protected]
- Website
- orioshuttle.com
Bus from Piazza Luigi di Savoia to Milan Bergamo Orio al Serio Airport
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €11–15
- Schedules at
- orioshuttle.com
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Milano, San Donato M3 to Brindisi
- Ave. Duration
- 14h 10m
- Frequency
- Once daily
- Estimated price
- €85–130
- Website
- Flixbus
Want to know more about travelling around Italy
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Italy Travel Guides
Read the travel guide
Getting to Milan from the airport
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
Booking & Getting There
Milan to Ostuni bus services, operated by FlixBus, arrive at Brindisi station.
Milan to Ostuni train services, operated by Trenitalia Frecce, arrive at Bari Centrale station.
Yes, the driving distance between Milan to Ostuni is 962 km. It takes approximately 8h 47m to drive from Milan to Ostuni.
Book your Milan to Ostuni train tickets online with Omio.
Book your Milan to Ostuni bus tickets online with Omio and FlixBus.
There are 4094+ hotels available in Ostuni.










































