The average train between Venice and Sankt Gallen takes 12h 41m and the fastest train takes 7h 58m. The train service runs several times per day from Venice to Sankt 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 4 times a day between Venice and Sankt Gallen. The earliest departure is at 5:22 AM in the morning, and the last departure from Venice is at 7:18 PM which arrives into Sankt Gallen at 11:55 AM. All services require a transfer at Milano Centrale and take an average of 12h 41m. The schedules shown below are for the next available departures.
Arrives next day


18h 7m • 2 changes
Arrives next day


19h 33m • 2 changes


9h 7m • 2 changes


9h 33m • 2 changes
Arrives next day


9h 7m • 2 changes
Arrives next day


19h 33m • 2 changes


9h 7m • 2 changes


9h 33m • 2 changes
Arrives next day


9h 7m • 2 changes
Arrives next day


19h 33m • 2 changes


10h 7m • 2 changes


9h 33m • 2 changes
Arrives next day


18h 7m • 2 changes
Arrives next day


19h 33m • 2 changes


8h 33m • 2 changes


7h 58m • 2 changes


9h 37m • 2 changes


7h 58m • 2 changes
Want to know about travelling from Venice to Sankt 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 Venice to Sankt Gallen. However, there are services departing from Venice station and arriving at Sankt Gallen station via Milano Centrale. The journey, including transfers, takes approximately 12h 41m.
Venice to Sankt Gallen train services, operated by Trenitalia Frecce, depart from Venezia S. Lucia station.
Venice to Sankt Gallen train services, operated by Trenitalia Frecce, arrive at St. Gallen station.
Book your Venice to Sankt Gallen train tickets online with Trenitalia Frecce, Trenitalia EuroCity and Schweizerische Südostbahn AG.
The distance between Venice and Sankt Gallen is 316.5 km. The road distance is 568 km.
You can take a train from Venezia S. Lucia to St. Gallen via Milano Centrale and Arth-Goldau in around 7h 56m.