There are 4 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  •  4 h 31 min

  1. 800703 / ...
  2. 145 / ...

$13 - $51

Cheapest option

Train, bus  •  4 h 53 min

  1. 874 / ...
  2. 179 / ...

$12 - $15

2 alternative options

Drive  •  3 h 6 min

  1. 140.4 miles

$25 - $40

Fly, bus  •  4 h 58 min

  1. RIX - TLL

$41 - $124

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 4 h 31 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
1188 Latvia
Website
1188.lv
Train from Rīga pasažieru to Valga
Ave. Duration
2 h 42 min
Frequency
Twice daily
Estimated price
$7
Schedules at
1188.lv
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
Hourly
Estimated price
$5 - $8
Schedules at
peatus.ee
Bus from Tallinna bussijaam to Viljandi bussijaam
Ave. Duration
2 h 25 min
Frequency
Hourly
Estimated price
$8 - $12
Schedules at
peatus.ee
Automen OÜ
Website
automen.ee
Bus from Pärnu bussijaam to Reinu tee
Ave. Duration
2 h 1 min
Frequency
4 times a day
Estimated price
$4 - $6
Schedules at
automen.ee
Go Bus AS
Website
gobus.ee
Bus from Pärnu bussijaam to Vabaduse plats
Ave. Duration
1 h 29 min
Frequency
Twice 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 Viljandi bussijaam
Ave. Duration
1 h 40 min
Frequency
Hourly
Estimated price
$5 - $8
Schedules at
taisto.ee
Bus from Tallinna bussijaam to Viljandi bussijaam
Ave. Duration
2 h 10 min
Frequency
Hourly
Estimated price
$8 - $12
Schedules at
taisto.ee

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 Need to know: Jadrolinija, Getting to Rome from the airport and How to get from Florence to Rome - to help you get the most out of your next trip.

Questions & Answers

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

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

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

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 4 h 31 min.

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