The distance between Kuressaare and Haapsalu is around 158km (98 miles) and the quickest way to get there is to drive and then take a ferry which takes around 2h 25m.
We've found 3 different ways to get from Kuressaare to Haapsalu by bus, car and ferry. The recommended routes, which include information on duration, ticket price, and level of difficulty, can be found below.
👋 Also check out Haapsalu → Kuressaare if you're planning a return trip.
Take the bus to Lihula and then to Veekeskus.
Go Bus AS
1 similiar route
We’ve grouped similar routes together, click the arrows to see the other options.
Drive to Kuivastu then take a ferry to Virtsu then drive to Haapsalu.
Multiple operators
There are several options for getting from Kuressaare to Haapsalu by bus, car and ferry. The cheapest option is to take the bus which costs around €9 ($9) and will take around 2h 55m. If you need to get there more quickly, you can drive and then take a ferry and arrive in approximately 2h 25m, though it is a bit more costly at approximately €18 ($18).
The distance between Kuressaare and Haapsalu is around 158km (98 miles). In a direct line (as the crow flies), the distance is 98km (61 miles)
It takes around 2h 55m to get from Kuressaare and Haapsalu by bus.
The quickest way to get from Kuressaare to Haapsalu is to drive and then take a ferry which takes around 2h 25m and will set you back approx €18 ($18).
The cheapest way to travel between Kuressaare and Haapsalu is to take the bus which will typically cost around €9 ($9) for a standard one-way ticket.
There is no train service that runs between Kuressaare and Haapsalu. We recommend that you drive to Kuivastu then take a ferry to Virtsu then drive to Haapsalu. instead which will take 2h 25m.
Yes there is a bus that runs regularly from Kuressaare and Haapsalu. It typically takes around 2h 55m and departs once daily.
There are no direct bus services that runs from Kuressaare to Haapsalu. However, you can instead can take several connecting buses with changeovers in Lihula. These services run once daily and will take a minimum of 2h 55m.
Go Bus AS, Peatus Estonia, Lux Express, Estonian Lines OÜ and Sirel Reisid OÜ run regular bus services between Kuressaare and Haapsalu. Buses run once daily and take around 2h 55m on average but will vary depending on you book with.
It doesn't look like you can fly directly from Kuressaare to Haapsalu. We recommend that you take the bus to Lihula and then to Veekeskus. instead which will take 2h 55m.
The closest major airport to Haapsalu is Tallinn Airport (TLL) (TLL) which is approximately 89km (55 miles) from Haapsalu.
No, its not really possible or feasible to drive from Kuressaare to Haapsalu. We recommend that you take the bus to Lihula and then to Veekeskus. instead which will take 2h 55m.
If you don't have a car, the easiest way to get from Kuressaare to Haapsalu is to take the bus which takes, on average, 2h 55m and will usually cost around €9 ($9).
Transport option | Duration | Cost | Frequency | Distance |
---|---|---|---|---|
Bus + 1 similar | 2h 55m | €9($9) | once daily | 159km (99 miles) |
Bus via Virtsu sadam | 3h 10m | €10($10) | twice daily | 159km (99 miles) |
Car and Ferry | 2h 25m | €18($18) | hourly | 158km (98 miles) |
Go Bus AS
Peatus Estonia
Lux Express
Estonian Lines OÜ
Sirel Reisid OÜ
TS Laevad OÜ
The following major airports near Haapsalu offer regular flights to various popular destinations within Estonia and internationally.