The average train between Slagelse and Viborg takes 3h 42m and the fastest train takes 3h 32m. There is a train service every few hours from Slagelse to Viborg. 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 Slagelse and Viborg. The earliest departure is at 1:41 AM at night, and the last departure from Slagelse is at 8:27 PM which arrives into Viborg at 12:25 AM. All services require a transfer, and take on average 3h 42m. The schedules shown below are for the next available departures.

4h 15m • 1 change

3h 32m • 1 change

3h 32m • 1 change

3h 32m • 1 change

4h 8m • 1 change

3h 51m • 1 change

3h 40m • 1 change

3h 40m • 1 change

4h 8m • 1 change

4h 21m • 1 change

3h 40m • 1 change

3h 40m • 1 change
Want to know about travelling from Slagelse to Viborg? 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 Slagelse to Viborg. However, there are services departing from Slagelse station and arriving at Viborg station via Aarhus H. The journey, including transfers, takes approximately 3h 42m.
Slagelse to Viborg train services, operated by Danish Railways (DSB), depart from Slagelse St. station.
Slagelse to Viborg train services, operated by Danish Railways (DSB), arrive at Viborg St. station.
The distance between Slagelse and Viborg is 168.6 km. The road distance is 320 km.
You can take a train from Slagelse St. to Viborg St. via Aarhus H in around 3h 40m.