The train between Varese and Zug takes 2h 54m. There is a train service every few hours from Varese to Zug. 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 Varese and Zug. The earliest departure is at 7:06 AM in the morning, and the last departure from Varese is at 8:06 PM which arrives into Zug at 11:00 PM. All services require a transfer, and take on average 2h 54m. The schedules shown below are for the next available departures.

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change

2h 54m • 1 change
Want to know about travelling from Varese to Zug? 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 Varese to Zug. However, there are services departing from Varese station and arriving at Zug station via Lugano. The journey, including transfers, takes approximately 2h 54m.
Varese to Zug train services, operated by Trenord, depart from Varese station.
Varese to Zug train services, operated by Trenord, arrive at Zug(Ch) station.
Book your Varese to Zug train tickets online with Trenord and Trenitalia EuroCity.
The distance between Varese and Zug is 152.2 km. The road distance is 186 km.
You can take a train from Varese to Zug(Ch) via Lugano in around 2h 43m.