• Our partners include:

  • RailEurope
  • Deutsche Bahn
  • Trenitalia
  • SNCF
  • Flixbus
  • RENFE
  • Ouibus
  • BlaBlaCar
  • Booking.com
  • Skyscanner

There are 5 ways to get from Riga to Viljandi by bus, train, car or plane

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.

Recommended option

Bus Ecolines  •  5 h 5 min

  1. Take the bus from Rīga to Pärnu 800703 / ...
  2. Take the bus from Pärnu bussijaam to Vabaduse plats 145 / ...

$13 - $50

Cheapest option

Train, bus  •  5 h 13 min

  1. Take the train from Riga to Valga 866 / ...
  2. Take the bus from Valga bussijaam to Männimäe 178 / ...

$11 - $14

3 alternative options

Bus 1188 Latvia  •  7 h 3 min

  1. Take the bus from Riga to Valka 7600
  2. Take the bus from Valga bussijaam to Abja-Paluoja 293 / ...

$12 - $20

Drive  •  3 h 6 min

  1. Drive from Riga to Viljandi 140.4 miles

$25 - $40

Fly, train  •  5 h 55 min

  1. Fly from Riga (RIX) to Tallinn (TLL) RIX - TLL
  2. Take the train from Tallinn to Viljandi

$40 - $121

Questions & Answers

The cheapest way to get from Riga to Viljandi is to train and bus which costs $11 - $15 and takes 5 h 13 min.

More details

The quickest way to get from Riga to Viljandi is to drive which costs $25 - $40 and takes 3 h 6 min.

More details

No, there is no direct bus from Riga to Viljandi. However, there are services departing from Rīga and arriving at Vabaduse plats via Pärnu bussijaam. The journey, including transfers, takes approximately 5 h 5 min.

More details

The distance between Riga and Viljandi is 181 km. The road distance is 224.7 km.

Get driving directions

The best way to get from Riga to Viljandi without a car is to bus which takes 5 h 5 min and costs $12 - $50.

More details

It takes approximately 5 h 5 min to get from Riga to Viljandi, including transfers.

More details

Riga to Viljandi bus services, operated by Ecolines, depart from Rīga station.

More details

The quickest flight from Riga Airport to Tallinn Airport is the direct flight which takes 49 min.

Search flights

Riga to Viljandi bus services, operated by Peatus Estonia, arrive at Vabaduse plats station.

More details

Yes, the driving distance between Riga to Viljandi is 225 km. It takes approximately 3 h 6 min to drive from Riga to Viljandi.

Get driving directions

Map of how to get from Riga to Viljandi.
Launch map view
  • Distance: 112.9 miles
  • Duration: 5 h 5 min

What companies run services between Riga, Latvia and Viljandi, Estonia?

You can take a bus from Riga to Viljandi via Pärnu and Pärnu bussijaam in around 5 h 5 min.

Airlines
Air Baltic
Website
airbaltic.com
Flights from Riga to Tallinn
Ave. Duration
49 min
When
Every day
Estimated price
$30 - $160
Train operators
Latvian Railways (PV)
Elron
Website
elron.ee
Train from Tallinn to Viljandi
Ave. Duration
2 h 11 min
Frequency
4 times a day
Estimated price
$7 - $11
Schedules at
elron.ee
Bus operators
Temptrans
Website
temptrans.ee
Bus from Riga to Pärnu Bus
Ave. Duration
3 h 11 min
Frequency
Twice a week
Estimated price
$30 - $45
Schedules at
temptrans.ee
Peatus Estonia
Website
peatus.ee
Bus from Pärnu bussijaam to Vabaduse plats
Ave. Duration
1 h 29 min
Frequency
5 times a day
Estimated price
$5 - $8
Schedules at
peatus.ee
Go Bus AS
Website
gobus.ee
Bus from Pärnu bussijaam to Vabaduse plats
Ave. Duration
1 h 58 min
Frequency
Once daily
Estimated price
$4 - $7
Schedules at
gobus.ee
Taisto Liinid OÜ
Website
taisto.ee
Bus from Pärnu bussijaam to Vabaduse plats
Ave. Duration
1 h 29 min
Frequency
Once daily
Estimated price
$5 - $8
Schedules at
taisto.ee
Bus from Valga bussijaam to Männimäe
Ave. Duration
1 h 30 min
Frequency
4 times a day
Estimated price
$5 - $8
Schedules at
taisto.ee
1188 Latvia
Website
1188.lv
Bus from Riga to Valka
Ave. Duration
3 h 15 min
Frequency
4 times a day
Estimated price
$7 - $9
Schedules at
1188.lv
Vahesaar OÜ
Website
mkg.ee
Bus from Valga bussijaam to Abja-Paluoja
Ave. Duration
1 h 12 min
Frequency
Once daily
Estimated price
$4 - $6
Schedules at
mkg.ee
Sirel Reisid OÜ
Website
sirelreisid.com
Bus from Valga bussijaam to Abja-Paluoja
Ave. Duration
1 h 10 min
Frequency
5 times a week
Estimated price
$5 - $7
Schedules at
sirelreisid.com

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 Slovenia: Getting from Ljubljana to Lake Bled, How to get from Luton Airport into central London and Travelling to the US: What do I need to know? - to help you get the most out of your next trip.

More Questions & Answers

Air Baltic offers flights from Riga Airport to Tallinn Airport.

Search flights

There are 46+ hotels available in Viljandi. Prices start at $34 USD per night.

More details

The best way to get from Riga to Riga Airport is to line 22 bus which takes 27 min and costs .

More details