There are 6 ways to get from Haapsalu to Viljandi by bus, 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.
Bus
best- Take the bus from Veekeskus to Lihulabus L25 / ...
- Take the bus from Lihula to Vabaduse platsbus 149
4h 2m€6–10Bus, train via Tallinn
- Take the bus from Haapsalu bussijaam to Vana-Pääskülabus 204 / ...
- Take the train from Tallinn to Viljanditrain Re23 / ...
4h 54m€11–28Drive 178 km
- Drive from Haapsalu to Viljandicar 178 km
2h 39m€29–41Bus, train
- Take the bus from Haapsalu bussijaam to Tutimäebus 153
- Take the train from Rapla to Viljanditrain Re23 / ...
4h 8m€12–19Bus via Pärnu
- Take the bus from Niine to Pärnu bussijaambus 321
- Take the bus from Pärnu bussijaam to Vabaduse platsbus 146 / ...
4h 37m€9–20Bus via Pärnu #2
- Take the bus from Niine to Pärnu bussijaambus 321
- Take the bus from Pärnu bussijaam to Ugalabus 371
5h 25m
Haapsalu to Viljandi by bus
Questions & Answers
The cheapest way to get from Haapsalu to Viljandi is to bus which costs €6 - €10 and takes 4h 2m.
The fastest way to get from Haapsalu to Viljandi is to drive which takes 2h 39m and costs €28 - €45.
No, there is no direct bus from Haapsalu to Viljandi. However, there are services departing from Veekeskus and arriving at Vabaduse plats via Lihula. The journey, including transfers, takes approximately 4h 2m.
The distance between Haapsalu and Viljandi is 202 km. The road distance is 178 km.
The best way to get from Haapsalu to Viljandi without a car is to bus which takes 4h 2m and costs €6 - €10.
It takes approximately 4h 2m to get from Haapsalu to Viljandi, including transfers.
Haapsalu to Viljandi bus services, operated by Go Bus AS, depart from Veekeskus station.
Haapsalu to Viljandi bus services, operated by Go Bus AS, arrive at Lihula station.
Yes, the driving distance between Haapsalu to Viljandi is 178 km. It takes approximately 2h 39m to drive from Haapsalu to Viljandi.
Book your Haapsalu to Viljandi bus tickets online with Omio.
What companies run services between Haapsalu, Estonia and Viljandi, Estonia?
You can take a bus from Veekeskus to Vabaduse plats via Lihula in around 4h 2m.
- Phone
- +372 616 0245
- [email protected]
- Website
- Elron
Train from Tallinn to Viljandi
- Ave. Duration
- 2h 5m
- Frequency
- Every 4 hours
- Estimated price
- €7–14
- Website
- Elron
- Express Train Ticket
- €9–14
Train from Rapla to Viljandi
- Ave. Duration
- 1h 14m
- Frequency
- Every 4 hours
- Estimated price
- €6–10
- Website
- Elron
- Express Train Ticket
- €6–10
- Phone
- +372 640 4000
- [email protected]
- Website
- Go Bus
Bus from Veekeskus to Lihula
- Ave. Duration
- 44 min
- Frequency
- 5 times a day
- Estimated price
- €2–3
- Website
- Go Bus
Bus from Lihula to Vabaduse plats
- Ave. Duration
- 2h 18m
- Frequency
- Once daily
- Estimated price
- €4–7
- Website
- Go Bus
Bus from Haapsalu bussijaam to Vana-Pääsküla
- Ave. Duration
- 1h 21m
- Frequency
- Every 4 hours
- Estimated price
- €3–5
- Website
- Go Bus
Bus from Pärnu bussijaam to Vabaduse plats
- Ave. Duration
- 1h 20m
- Frequency
- Twice daily
- Estimated price
- €3–5
- Website
- Go Bus
- Phone
- +372 680 0909
- [email protected]
- Website
- Lux Express
Bus from Haapsalu bussijaam to Vana-Pääsküla
- Ave. Duration
- 1h 15m
- Frequency
- Every 4 hours
- Estimated price
- €5–11
- Website
- Lux Express
Bus from Pärnu bussijaam to Vabaduse plats
- Ave. Duration
- 1h 24m
- Frequency
- Every 4 hours
- Estimated price
- €6–12
- Website
- Lux Express
- Phone
- +372 502 5996
- [email protected]
- Website
- MK Reis-X OÜ
Bus from Haapsalu bussijaam to Vana-Pääsküla
- Ave. Duration
- 1h 22m
- Frequency
- Once daily
- Estimated price
- €4–7
- Schedules at
- MK Reis-X OÜ
Bus from Haapsalu bussijaam to Tutimäe
- Ave. Duration
- 1h 33m
- Frequency
- Once daily
- Estimated price
- €4–7
- Schedules at
- MK Reis-X OÜ
Bus from Niine to Pärnu bussijaam
- Ave. Duration
- 2h 13m
- Frequency
- Once daily
- Estimated price
- €6–9
- Schedules at
- MK Reis-X OÜ
Bus from Niine to Pärnu bussijaam
- Ave. Duration
- 2h 13m
- Frequency
- Once daily
- Estimated price
- €6–9
- Schedules at
- MK Reis-X OÜ
- Phone
- +372 641 8218
- [email protected]
- Website
- Atko Bussiliinid AS
Bus from Pärnu bussijaam to Vabaduse plats
- Ave. Duration
- 2h 13m
- Frequency
- 6 times a week
- Schedules at
- Atko Bussiliinid AS
Bus from Pärnu bussijaam to Ugala
- Ave. Duration
- 2h 12m
- Frequency
- 6 times a week
- Schedules at
- Atko Bussiliinid AS
Want to know more about travelling around the world?
Rome2Rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including The London Underground: Essential tips to navigate the Tube, Travel Insider: Top Japan travel tips by Beatrix Holland, and Thanksgiving 2018: How to travel stress-free - to help you get the most out of your next trip.
More Questions & Answers
There are 140+ hotels available in Viljandi.




















