Find a train from Milan to Bari

These train, bus and flight companies trust us

Find the cheapest ticket for your trip


Journey details

Best price 34.72$
Journey duration 8 h 22 min
Connections per day 105
First departure: 07:07
Last departure: 21:20
Distance 786km

The best deals for your train from Milan to Bari on virail

If you are looking for the easiest way to find the best price for your train route, virail is what you have been looking for. You just need to select the date and virail will show you all the connections offered by our partners: by filtering the results you will find the perfect solution for your budget and schedule. Virail will redirect you to the website of the company for a simple and safe booking.

Trains from Milan to Bari: which companies can you travel with?

Virail cooperates with more than 200 partners in Europe and in the rest of the world, among which also Trenitalia serving the train route Milan - Bari.

Trenitalia belongs to the national railway group and it is currently the first rail provider in Italy, with more than 40 million passengers, offering not only regional and local connections, but also high-speed routes.

What is the price of train tickets from Milan to Bari?

By booking in advance, you can find cheap train tickets from Milan to Bari from 29,90 €. However, train tickets for this route cost on average around 145,50 €.

Ticket price Milan - Bari every day

Today Tomorrow In 2 days In 3 days In 4 days In 5 days In 6 days
35 $35 $35 $12 $12 $12 $21 $
40 $26 $26 $71 $90 $111 $146 $
61 $31 $67 $40 $40 $64 $75 $
More More More More More 56 $1 $



If you don't feel like spending many hours in a train, you can consider travelling by plane. Especially if you have the possibility to book in advance, flying to Bari can be definitely cheap.

Which stations are served by the trains travelling from Milan to Bari?

You can take the train to Bari at Milano Nord Bovisa, Malpensa Aeroporto, Malpensa Aeroporto T2, Milano Centrale, Milano Romolo, Milano Porta Romana or Milano Porta Garibaldi, which arrives at Bari Centrale or Bari S. Spirito.

How long does it take from Milan to Bari and when do the trains leave?

The average duration of the journey is 8 hours and 49 minutes, but the fastest connections take you to Bari in 10 hours and 51 minutes. The first train leaves from Milan at 19:05, while the last one leaves at 15:06.

virail lets you search and compare times and prices of any transports from one city to another