The average train between Glarus and St. Gallen takes 1h 55m and the fastest train takes 1h 49m. There is a train service every few hours from Glarus to St. Gallen. 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 Glarus and St. Gallen. The earliest departure is at 5:44 AM in the morning, and the last departure from Glarus is at 10:44 PM which arrives into St. Gallen at 12:33 AM. All services require a transfer, and take on average 1h 55m. The schedules shown below are for the next available departures.

1h 49m • 1 change

1h 49m • 1 change

1h 49m • 1 change

1h 49m • 1 change

1h 49m • 1 change

1h 49m • 1 change

1h 49m • 1 change

1h 49m • 1 change

1h 49m • 1 change

1h 49m • 1 change

1h 49m • 1 change

1h 49m • 1 change
Want to know about travelling from Glarus to St. Gallen? 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 Glarus to St. Gallen. However, there are services departing from Glarus station and arriving at St. Gallen station via Uznach. The journey, including transfers, takes approximately 1h 55m.
Glarus to St. Gallen train services, operated by Schweizerische Südostbahn AG, depart from Glarus station.
Glarus to St. Gallen train services, operated by Schweizerische Südostbahn AG, arrive at St. Gallen station.
Book your Glarus to St. Gallen train tickets online with Schweizerische Südostbahn AG.
The distance between Glarus and St. Gallen is 48.1 km. The road distance is 69 km.
You can take a train from Glarus to St. Gallen via Uznach in around 1h 33m.