The average train between Milan and Trani takes 8h 42m and the fastest train takes 6h 52m. The train service runs several times per day from Milan to Trani. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run 5 times a day between Milan and Trani. The earliest departure is at 6:10 AM in the morning, and the last departure from Milan is at 10:45 PM which arrives into Trani at 6:52 AM. All services require a transfer, and take on average 8h 42m. The schedules shown below are for the next available departures.

8h 25m • 1 change

8h 45m • 1 change

7h • 1 change

8h 4m • 1 change

8h 25m • 1 change

8h 45m • 1 change

7h • 1 change

8h 4m • 1 change

8h 25m • 1 change

8h 45m • 1 change

7h • 1 change

8h 4m • 1 change

8h 25m • 1 change

8h 45m • 1 change

7h • 1 change

8h 4m • 1 change

8h 25m • 1 change

8h 45m • 1 change

7h • 1 change

8h 4m • 1 change
Want to know about travelling from Milan to Trani? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from Milan to Trani. However, there are services departing from Milan station and arriving at Trani station via Barletta. The journey, including transfers, takes approximately 8h 42m.
Milan to Trani train services, operated by Trenitalia Frecce, depart from Milano Centrale station.
Milan to Trani train services, operated by Trenitalia Frecce, arrive at Barletta station.
Book your Milan to Trani train tickets online with Trenitalia Frecce, Trenitalia and Trenitalia Intercity.
The distance between Milan and Trani is 746.1 km. The road distance is 1,001 km.
Trenitalia Frecce operates a train from Milano Centrale to Barletta hourly. Tickets cost €140–290 and the journey takes 7h 34m. Two other operators also service this route.