The average bus between Milan and San Martino takes 7h 33m and the fastest bus takes 5h 21m. The bus service runs several times per day from Milan to San Martino. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Buses run twice daily between Milan and San Martino. The earliest departure is at 8:15 AM in the morning, and the last departure from Milan is at 6:25 PM which arrives into San Martino at 6:36 AM. All services require a transfer at Pisa and take an average of 7h 33m. The schedules shown below are for the next available departures.

5h 29m • 1 change

5h 44m • 1 change
Arrives next day

12h 11m • 1 change

5h 29m • 1 change

5h 44m • 1 change
Arrives next day

13h 11m • 1 change
Want to know about travelling from Milan to San Martino? 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 bus from Milan to San Martino. However, there are services departing from Milan station and arriving at San Martino station via Pisa. The journey, including transfers, takes approximately 7h 33m.
Milan to San Martino bus services, operated by FlixBus, depart from Milano, Autostazione Lampugnano station.
Milan to San Martino bus services, operated by FlixBus, arrive at Pisa station.
The distance between Milan and San Martino is 217.2 km. The road distance is 323 km.
FlixBus operates a bus from Milano, Autostazione Lampugnano to Pisa twice daily. Tickets cost €26–45 and the journey takes 5h 5m.