The average train between San Donato Milanese and Varese takes 1h 55m and the fastest train takes 1h 20m. There is an hourly train service from San Donato Milanese to Varese. 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 San Donato Milanese and Varese. The earliest departure is at 6:47 AM in the morning, and the last departure from San Donato Milanese is at 11:17 PM which arrives into Varese at 6:40 AM. All services require a transfer, and take on average 1h 55m. The schedules shown below are for the next available departures.

1h 28m • 1 change

1h 28m • 1 change

1h 28m • 1 change

1h 53m • 1 change

1h 53m • 1 change

1h 53m • 1 change

1h 28m • 1 change

1h 53m • 1 change

1h 53m • 1 change

1h 53m • 1 change

1h 28m • 1 change

1h 20m • 1 change
Want to know about travelling from San Donato Milanese to Varese? 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 San Donato Milanese to Varese. However, there are services departing from San Donato Milanese station and arriving at Varese station via Milano Bovisa Politecnico. The journey, including transfers, takes approximately 1h 55m.
San Donato Milanese to Varese train services, operated by Trenord, depart from Borgolombardo station.
San Donato Milanese to Varese train services, operated by Trenord, arrive at Varese Nord station.
Book your San Donato Milanese to Varese train tickets online with Trenord.
The distance between San Donato Milanese and Varese is 57.2 km. The road distance is 64 km.
You can take a train from Borgolombardo to Varese Nord via Milano Bovisa Politecnico in around 1h 47m.