The calculated distance (air line) between Viljandi and Pärnu is approximately 40 miles respectively 64 kilometers.
By car or train, the actual journey to Pärnu is certainly longer, as only the direct route (as the crow flies) between Viljandi and Pärnu has been calculated here.