There are 9 ways to get from Trani to Milan by plane, train (Trenitalia), bus, night train, 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 to Milan Linate Airport
best- Fly from Bari Karol Wojtyła Airport (BRI) to Milan Linate Airport (LIN)plane BRI - LIN
2h 11m€126–227Bus
cheapest- Take the bus from Trani to Foggiabus 565
- Take the bus from Foggia to Milano, San Donato M3bus N435 / ...
11h 35m€51–95Train via Barletta
- Take the train from Barletta to Milano Centraletrain Fr
8h 14m€76–223Night train
- Take the night train from Trani to Milano Centralenighttrain Ini
8h 47m€70–150Fly to Il Caravaggio International Airport
- Fly from Bari Karol Wojtyła Airport (BRI) to Il Caravaggio International Airport (BGY)plane BRI - BGY
2h 56m€120–289Fly to Milano Malpensa Airport, train
- Fly from Bari Karol Wojtyła Airport (BRI) to Milano Malpensa Airport (MXP)plane BRI - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
3h 11m€112–220Train
- Take the train from Trani to Milano Centraletrain Ic
9h 3m€80–210Bus via San Giovanni Rotondo
- Take the bus from Andria to San Giovanni Rotondobus 7191
- Take the bus from San Giovanni Rotondo - p.zza Europa-Uff. to Milano, San Donato M3bus
13h 44m€56–109Drive 836.9 km
- Drive from Trani to Milancar 836.9 km
7h 30m€131–189
Trani to Milan by train
Questions & Answers
The cheapest way to get from Trani to Milan is to bus which costs €50 - €95 and takes 11h 35m.
The fastest way to get from Trani to Milan is to fly which takes 2h 11m and costs €120 - €230.
No, there is no direct bus from Trani to Milan. However, there are services departing from Trani and arriving at Milano, San Donato M3 via Foggia. The journey, including transfers, takes approximately 11h 35m.
Yes, there is an overnight train departing from Trani and arriving at Milano Centrale. This train operates every day. The journey takes approximately 8h 47m.
The distance between Trani and Milan is 819 km. The road distance is 836.9 km.
The best way to get from Trani to Milan without a car is to train via Barletta which takes 8h 14m and costs €75 - €230.
It takes approximately 2h 11m to get from Trani to Milan, including transfers.
Trani to Milan bus services, operated by FlixBus, depart from Trani station.
Trani to Milan train services, operated by Trenitalia Frecce, depart from Barletta station.
The best way to get from Trani to Milan is to fly which takes 2h 11m and costs €120 - €230. Alternatively, you can train via Barletta, which costs €75 - €230 and takes 8h 14m, you could also bus, which costs €50 - €95 and takes 11h 35m.
What companies run services between Trani, Italy and Milan, Italy?
ITA Airways flies from Bari Karol Wojtyła Airport (BRI) to Milan Linate Airport (LIN) every 4 hours. Alternatively, Trenitalia Frecce operates a train from Barletta to Milano Centrale every 4 hours. Tickets cost €110–220 and the journey takes 7h 4m. Two other operators also service this route.
- Website
- ryanair.com
Flights from Bari Karol Wojtyła Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- €40–160
Flights from Bari Karol Wojtyła Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- €30–120
- Website
- ita-airways.com
Flights from Bari Karol Wojtyła Airport to Milan Linate Airport
- Ave. Duration
- 1h 29m
- When
- Every day
- Estimated price
- €45–120
Flights from Bari Karol Wojtyła Airport to Milan Linate Airport via Rome
- Ave. Duration
- 3h 38m
- When
- Every day
- Estimated price
- €45–120
- Website
- easyjet.com
Flights from Bari Karol Wojtyła Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 38m
- When
- Every day
- Estimated price
- €26–110
- Website
- skyalps.com
Flights from Bari Karol Wojtyła Airport to Il Caravaggio International Airport via Mostar
- Ave. Duration
- 3h 30m
- When
- Monday and Friday
- Estimated price
- €190–380
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Barletta to Milano Centrale
- Ave. Duration
- 7h 4m
- Frequency
- Every 4 hours
- Estimated price
- €110–220
- Schedules at
- trenitalia.com
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Barletta to Milano Centrale
- Ave. Duration
- 9h 2m
- Frequency
- 4 times a day
- Estimated price
- €75–190
- Website
- https://www.trenitalia.com/en.html
Train from Trani to Milano Centrale
- Ave. Duration
- 9h 3m
- Frequency
- 4 times a day
- Estimated price
- €80–190
- Website
- https://www.trenitalia.com/en.html
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Barletta to Milano Centrale
- Ave. Duration
- 7h 43m
- Frequency
- Once daily
- Estimated price
- €100–200
- Website
- https://www.italotreno.it/en
Train from Trani to Milano Centrale
- Ave. Duration
- 7h 52m
- Frequency
- Once daily
- Estimated price
- €100–210
- Website
- https://www.italotreno.it/en
- Phone
- 06 3000
- Website
- trenitalia.com
Night train from Trani to Milano Centrale
- Ave. Duration
- 8h 47m
- Frequency
- Twice daily
- Estimated price
- €70–150
- Website
- https://www.trenitalia.com/en.html
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Trani to Foggia
- Ave. Duration
- 1h 25m
- Frequency
- Once daily
- Estimated price
- €5–10
- Website
- https://www.flixbus.co.uk
Bus from Foggia to Milano, San Donato M3
- Ave. Duration
- 9h 10m
- Frequency
- Once daily
- Estimated price
- €45–85
- Website
- https://www.flixbus.co.uk
- Phone
- +39 080 579 0211
- info@sitasudtrasporti.it
- Website
- sitasudtrasporti.it
Bus from Andria to San Giovanni Rotondo
- Ave. Duration
- 1h 40m
- Frequency
- 6 times a week
- Estimated price
- €5–8
- Schedules at
- sitasudtrasporti.it
- Phone
- +39 (0) 0882 - 228960
- Website
- ferroviedelgargano.com
Bus from San Giovanni Rotondo - p.zza Europa-Uff. to Milano, San Donato M3
- Ave. Duration
- 9h 40m
- Frequency
- 3 times a day
- Estimated price
- €50–100
- Schedules at
- ferroviedelgargano.com
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
More Questions & Answers
Trani to Milan bus services, operated by FlixBus, arrive at Foggia station.
Trani to Milan train services, operated by Trenitalia Frecce, arrive at Milano Centrale station.
Yes, the driving distance between Trani to Milan is 837 km. It takes approximately 7h 30m to drive from Trani to Milan.
Book your Trani to Milan train tickets online with Omio.
Book your Trani to Milan bus tickets online with Omio and FlixBus.
There are 14519+ hotels available in Milan.

































