There are 12 ways to get from Taranto to Milan by train, plane, train (Trenitalia), bus, night 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.
Train to Bari Karol Wojtyła Airport, fly to Milan Linate Airport
best- Take the train from Taranto to Bari Centraletrain
- Fly from Bari Karol Wojtyła Airport (BRI) to Milan Linate Airport (LIN)plane BRI - LIN
4h 41m€75–205Train to Bari Karol Wojtyła Airport, fly to Milano Malpensa Airport, train
cheapest- Take the train from Taranto to Bari Centraletrain
- 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
5h 31m€48–198Train (Trenitalia)
- Take the train from Taranto to Milano Centraletrain Fr
8h 45m€120–250Bus
- Take the bus from Taranto Via per San Giorgio to Milanbus Itabus
12h 57m€51–132Night train
- Take the nighttrain from Taranto to Milano Centralenighttrain Ini
11h 12m€85–140Train to Brindisi Airport, fly to Milan Linate Airport
- Take the train from Taranto to Brindisitrain
- Fly from Brindisi Airport (BDS) to Milan Linate Airport (LIN)plane BDS - LIN
4h 25m€70–187Train to Bari Karol Wojtyła Airport, fly to Il Caravaggio International Airport, bus
- Take the train from Taranto to Bari Centraletrain
- Fly from Bari Karol Wojtyła Airport (BRI) to Il Caravaggio International Airport (BGY)plane BRI - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
5h 25m€54–235Train to Brindisi Airport, fly to Il Caravaggio International Airport, bus
- Take the train from Taranto to Brindisitrain
- Fly from Brindisi Airport (BDS) to Il Caravaggio International Airport (BGY)plane BDS - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
5h 10m€59–287Train to Brindisi Airport, fly to Milano Malpensa Airport, train
- Take the train from Taranto to Brindisitrain
- Fly from Brindisi Airport (BDS) to Milano Malpensa Airport (MXP)plane BDS - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibalditrain
5h 20m€48–200Train to Bari Karol Wojtyła Airport, fly to Verona Villafranca Airport, train
- Take the train from Taranto to Bari Centraletrain
- Fly from Bari Karol Wojtyła Airport (BRI) to Verona Villafranca Airport (VRN)plane BRI - VRN
- Take the train from Verona Porta Nuova to Milano Centraletrain
6h 24m€90–344Bus via Verona
- Take the bus from Taranto to Verona Porta Nuova Stationbus
- Take the bus from Verona to Milano, Autostazione Lampugnanobus 423 / ...
14h 24m€110–150Drive 963 km
- Drive from Taranto to Milancar 963 km
8h 40m€174–251
Taranto to Milan by train (Trenitalia)
Comparing Your Travel Options
The cheapest way to get from Taranto to Milan is to bus which costs €50 - €140 and takes 12h 57m.
The fastest way to get from Taranto to Milan is to train and fly which takes 4h 25m and costs €70 - €190.
No, there is no direct bus from Taranto to Milan. However, there are services departing from Taranto Via per San Giorgio and arriving at Milan via . The journey, including transfers, takes approximately 12h 57m.
Yes, there is a direct train departing from Taranto and arriving at Milano Centrale. Services depart four times a day, and operate every day. The journey takes approximately 8h 45m.
The distance between Taranto and Milan is 902 km. The road distance is 963 km.
The best way to get from Taranto to Milan without a car is to train which takes 8h 45m and costs €120 - €250.
It takes approximately 4h 41m to get from Taranto to Milan, including transfers.
Taranto to Milan bus services, operated by Itabus S.p.A., depart from Taranto Via per San Giorgio station.
Taranto to Milan train services, operated by Trenitalia Frecce, depart from Taranto station.
The best way to get from Taranto to Milan is to train which takes 8h 45m and costs €120 - €250. Alternatively, you can bus, which costs €50 - €140 and takes 12h 57m.
What companies run services between Taranto, Italy and Milan, Italy?
Trenitalia Frecce operates a train from Taranto to Milano Centrale 3 times a day. Tickets cost €150–250 and the journey takes 8h 45m. Trenitalia Intercity also services this route twice daily. Alternatively, Itabus S.p.A. operates a bus from Taranto Via per San Giorgio to Milan twice daily. Tickets cost €50–90 and the journey takes 12h 40m. FlixBus also services this route twice daily.
- Website
- ryanair.com
Flights from Bari Karol Wojtyła Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €27–190
Flights from Bari Karol Wojtyła Airport to Il Caravaggio International Airport via Palermo
- Ave. Duration
- 3h 40m
- When
- Sunday
- Estimated price
- €27–190
Flights from Brindisi Airport to Il Caravaggio International Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- €45–230
Flights from Bari Karol Wojtyła Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 40m
- When
- Every day
- Estimated price
- €23–140
Flights from Brindisi Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- €25–180
Flights from Bari Karol Wojtyła Airport to Verona Villafranca Airport
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- €40–220
Flights from Bari Karol Wojtyła Airport to Verona Villafranca Airport via Palermo
- Ave. Duration
- 3h 45m
- When
- Thursday
- Estimated price
- €40–220
- Website
- ita-airways.com
Flights from Bari Karol Wojtyła Airport to Milan Linate Airport
- Ave. Duration
- 1h 30m
- When
- Every day
- Estimated price
- €55–170
Flights from Bari Karol Wojtyła Airport to Milan Linate Airport via Rome
- Ave. Duration
- 3h 40m
- When
- Every day
- Estimated price
- €55–170
Flights from Brindisi Airport to Milan Linate Airport
- Ave. Duration
- 1h 39m
- When
- Every day
- Estimated price
- €60–170
Flights from Brindisi Airport to Milan Linate Airport via Rome
- Ave. Duration
- 3h 35m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €60–170
- Website
- easyjet.com
Flights from Brindisi Airport to Milan Linate Airport
- Ave. Duration
- 1h 45m
- When
- Monday and Thursday
- Estimated price
- €50–110
Flights from Bari Karol Wojtyła Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- €24–120
Flights from Brindisi Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Friday, Saturday, Sunday, Monday, Tuesday, and Thursday
- Estimated price
- €40–140
- Website
- flyulendo.com
Flights from Bari Karol Wojtyła Airport to Il Caravaggio International Airport via Tirana
- Ave. Duration
- 3h 55m
- When
- Monday, Friday, Saturday, and Sunday
- Estimated price
- €35–150
Flights from Bari Karol Wojtyła Airport to Verona Villafranca Airport via Tirana
- Ave. Duration
- 3h 30m
- When
- Monday
- Estimated price
- €45–180
- Website
- neosair.it
Flights from Bari Karol Wojtyła Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 30m
- When
- Thursday
- Estimated price
- €110–350
Flights from Brindisi Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 45m
- When
- Friday
- Estimated price
- €130–400
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Taranto to Bari Centrale
- Ave. Duration
- 1h 20m
- Frequency
- Hourly
- Estimated price
- €13–19
- Website
- Trenitalia
Train from Taranto to Brindisi
- Ave. Duration
- 1h 7m
- Frequency
- Hourly
- Estimated price
- €8–12
- Website
- Trenitalia
Train from Taranto to Bari Centrale
- Ave. Duration
- 1h 20m
- Frequency
- Hourly
- Estimated price
- €13–19
- Website
- Trenitalia
Train from Taranto to Brindisi
- Ave. Duration
- 1h 7m
- Frequency
- Hourly
- Estimated price
- €8–12
- Website
- Trenitalia
Train from Taranto to Bari Centrale
- Ave. Duration
- 1h 20m
- Frequency
- Hourly
- Estimated price
- €13–19
- Website
- Trenitalia
Train from Taranto to Brindisi
- Ave. Duration
- 1h 7m
- Frequency
- Hourly
- Estimated price
- €8–12
- Website
- Trenitalia
Train from Taranto to Bari Centrale
- Ave. Duration
- 1h 20m
- Frequency
- Hourly
- Estimated price
- €13–19
- Website
- Trenitalia
- Phone
- +39 06 68475475
- Website
- Trenitalia Intercity
Train from Taranto to Bari Centrale
- Ave. Duration
- 1h 6m
- Frequency
- 5 times a day
- Estimated price
- €12–22
- Website
- Trenitalia Intercity
Train from Taranto to Milano Centrale
- Ave. Duration
- 11h 12m
- Frequency
- Twice daily
- Estimated price
- €120–220
- Website
- Trenitalia Intercity
Train from Taranto to Brindisi
- Ave. Duration
- 58 min
- Frequency
- 4 times a day
- Estimated price
- €7–14
- Website
- Trenitalia Intercity
Train from Taranto to Bari Centrale
- Ave. Duration
- 1h 6m
- Frequency
- 5 times a day
- Estimated price
- €12–22
- Website
- Trenitalia Intercity
Train from Taranto to Brindisi
- Ave. Duration
- 58 min
- Frequency
- 4 times a day
- Estimated price
- €7–14
- Website
- Trenitalia Intercity
Train from Taranto to Bari Centrale
- Ave. Duration
- 1h 6m
- Frequency
- 5 times a day
- Estimated price
- €12–22
- Website
- Trenitalia Intercity
Train from Taranto to Brindisi
- Ave. Duration
- 58 min
- Frequency
- 4 times a day
- Estimated price
- €7–14
- Website
- Trenitalia Intercity
Train from Taranto to Bari Centrale
- Ave. Duration
- 1h 6m
- Frequency
- 5 times a day
- Estimated price
- €12–22
- Website
- Trenitalia Intercity
- Phone
- +39 06 5210550
- Website
- Trenitalia Frecce
Train from Taranto to Bari Centrale
- Ave. Duration
- 1h 5m
- Frequency
- 3 times a day
- Estimated price
- €15–26
- Website
- Trenitalia Frecce
Train from Taranto to Milano Centrale
- Ave. Duration
- 8h 45m
- Frequency
- 3 times a day
- Estimated price
- €150–250
- Website
- Trenitalia Frecce
Train from Taranto to Bari Centrale
- Ave. Duration
- 1h 5m
- Frequency
- 3 times a day
- Estimated price
- €15–26
- Website
- Trenitalia Frecce
Train from Taranto to Bari Centrale
- Ave. Duration
- 1h 5m
- Frequency
- 3 times a day
- Estimated price
- €15–26
- Website
- Trenitalia Frecce
Train from Taranto to Bari Centrale
- Ave. Duration
- 1h 5m
- Frequency
- 3 times a day
- Estimated price
- €15–26
- Website
- Trenitalia Frecce
Train from Verona Porta Nuova to Milano Centrale
- Ave. Duration
- 1h 14m
- Frequency
- Every 30 minutes
- Estimated price
- €20–35
- Website
- Trenitalia Frecce
- Phone
- 06 3000
- Website
- Trenitalia ICN
Night train from Taranto to Milano Centrale
- Ave. Duration
- 11h 12m
- Frequency
- Twice daily
- Estimated price
- €85–140
- Website
- Trenitalia ICN
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 44 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
- Phone
- +39 06 68475475
- [email protected]
- Website
- Trenitalia Eurocity
Train from Verona Porta Nuova to Milano Centrale
- Ave. Duration
- 1h 24m
- Frequency
- 4 times a day
- Estimated price
- €35–85
- Website
- Trenitalia Eurocity
- 1st Class
- €55–85
- 2nd Class
- €35–50
- Phone
- +39 06 88 93 82 32
- Website
- Itabus S.p.A.
Bus from Taranto Via per San Giorgio to Milan
- Ave. Duration
- 12h 40m
- Frequency
- Twice daily
- Estimated price
- €50–90
- Website
- Itabus S.p.A.
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Taranto Via per San Giorgio to Milan
- Ave. Duration
- 12h 15m
- Frequency
- Twice daily
- Estimated price
- €85–130
- Website
- Flixbus
Bus from Verona to Milano, Autostazione Lampugnano
- Ave. Duration
- 2h 20m
- Frequency
- Every 4 hours
- Estimated price
- €15–22
- Website
- Flixbus
- [email protected]
- Website
- TERRAVISION
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–23
- Website
- TERRAVISION
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €5–23
- Website
- TERRAVISION
- Phone
- 035.319366
- [email protected]
- Website
- orioshuttle.com
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €11–14
- Schedules at
- orioshuttle.com
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €11–14
- Schedules at
- orioshuttle.com
- Phone
- +39 0362 185 0590
- [email protected]
- Website
- Onebus
Bus from Taranto to Verona Porta Nuova Station
- Ave. Duration
- 10h 59m
- Frequency
- Once a week
- Estimated price
- €95–130
- Website
- Onebus
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
Taranto to Milan bus services, operated by Itabus S.p.A., arrive at Milan station.
Taranto to Milan train services, operated by Trenitalia Frecce, arrive at Milano Centrale station.
Yes, the driving distance between Taranto to Milan is 963 km. It takes approximately 8h 40m to drive from Taranto to Milan.
Book your Taranto to Milan train tickets online with Omio and 12go.asia.
Book your Taranto to Milan bus tickets online with Omio.
There are 13813+ hotels available in Milan.















































