The average train between Milan and Pistoia takes 3h 7m and the fastest train takes 3h 2m. There is a train service every few hours from Milan to Pistoia. 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 hourly between Milan and Pistoia. The earliest departure is at 4:40 AM at night, and the last departure from Milan is at 7:40 PM which arrives into Pistoia at 10:44 PM. All services require a transfer, and take on average 3h 7m. The schedules shown below are for the next available departures.

3h 3m • 1 change

3h 2m • 1 change

3h 2m • 1 change

3h 21m • 1 change

3h 3m • 1 change

3h 2m • 1 change

3h 2m • 1 change

3h 21m • 1 change

3h 3m • 1 change

3h 2m • 1 change

3h 2m • 1 change

3h 21m • 1 change
Want to know about travelling from Milan to Pistoia? 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 Pistoia. However, there are services departing from Milan station and arriving at Pistoia station via Firenze S.M.N.. The journey, including transfers, takes approximately 3h 7m.
Milan to Pistoia train services, operated by Trenitalia Frecce, depart from Milano Centrale station.
Milan to Pistoia train services, operated by Trenitalia Frecce, arrive at Pistoia station.
Book your Milan to Pistoia train tickets online with Trenitalia Frecce and Trenitalia.
The distance between Milan and Pistoia is 218.8 km. The road distance is 338 km.
You can take a train from Milano Centrale to Pistoia via Firenze S.M.N. in around 2h 34m.