There are 4 ways to get from Schaffhausen to Schwyz by train or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train via Zurich
best- Take the train from Schaffhausen to Zürich HBtrain Re48 / ...
- Take the train from Zürich HB to Arth-Goldautrain Ec / ...
2h 13mCHF 30–74Drive 97.9 km
cheapest- Drive from Schaffhausen to Schwyzcar 97.9 km
1h 28mCHF 16–23Train
- Take the train from Schaffhausen to Zugtrain S24
- Take the train from Zug to Schwyztrain S2
2h 43mCHF 37–101Train #2
- Take the train from Schaffhausen to Zürich HBtrain Re48 / ...
- Take the train from Zürich HB to Schwyztrain Ir46
2h 47mCHF 37–79
Schaffhausen to Schwyz by train and bus
Questions & Answers
The cheapest way to get from Schaffhausen to Schwyz is to drive which costs SFr 15 - SFr 23 and takes 1h 28m.
The fastest way to get from Schaffhausen to Schwyz is to drive which takes 1h 28m and costs SFr 15 - SFr 23.
No, there is no direct train from Schaffhausen to Schwyz. However, there are services departing from Schaffhausen and arriving at Schwyz via Zürich HB and Arth-Goldau. The journey, including transfers, takes approximately 2h 13m.
The distance between Schaffhausen and Schwyz is 99 km. The road distance is 97.9 km.
The best way to get from Schaffhausen to Schwyz without a car is to train via Zurich which takes 2h 13m and costs SFr 30 - SFr 75.
It takes approximately 2h 13m to get from Schaffhausen to Schwyz, including transfers.
Schaffhausen to Schwyz train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Schaffhausen station.
Schaffhausen to Schwyz train services, operated by Swiss Federal Railways (SBB CFF FFS), arrive at Zürich HB station.
Yes, the driving distance between Schaffhausen to Schwyz is 98 km. It takes approximately 1h 28m to drive from Schaffhausen to Schwyz.
Book your Schaffhausen to Schwyz train tickets online with Omio.
What companies run services between Schaffhausen, Switzerland and Schwyz, Switzerland?
You can take a train from Schaffhausen to Schwyz, Zentrum via Zürich HB, Arth-Goldau, Schwyz, and Schwyz, Bahnhof in around 2h 13m.
Train from Schaffhausen to Zürich HB
- Ave. Duration
- 38 min
- Frequency
- Hourly
- Estimated price
- CHF 15–50
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Zürich HB to Arth-Goldau
- Ave. Duration
- 43 min
- Frequency
- Hourly
- Estimated price
- CHF 14–45
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Schaffhausen to Zug
- Ave. Duration
- 1h 41m
- Frequency
- Hourly
- Estimated price
- CHF 29–90
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Zug to Schwyz
- Ave. Duration
- 29 min
- Frequency
- Hourly
- Estimated price
- CHF 7–24
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Schaffhausen to Zürich HB
- Ave. Duration
- 38 min
- Frequency
- Hourly
- Estimated price
- CHF 15–50
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- +41 58 580 70 70
- Website
- Schweizerische Südostbahn AG
Train from Zürich HB to Arth-Goldau
- Ave. Duration
- 40 min
- Frequency
- Every 3 hours
- Estimated price
- CHF 10–16
- Schedules at
- Schweizerische Südostbahn AG
Train from Zug to Schwyz
- Ave. Duration
- 31 min
- Frequency
- Every 3 hours
- Estimated price
- CHF 5–9
- Schedules at
- Schweizerische Südostbahn AG
Train from Zürich HB to Schwyz
- Ave. Duration
- 56 min
- Frequency
- Every 3 hours
- Estimated price
- CHF 19–29
- Schedules at
- Schweizerische Südostbahn AG
Want to know more about travelling around Switzerland
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
More Questions & Answers
There are 444+ hotels available in Schwyz.









