Historialähteet mainitsevat Viljandin ensimmäistä kertaa vuonna 1211, mutta paikalla tiedetään olleen asutusta jo viikinkiajalla. 1300-luvulla hansaliiton aikaan Viljandi oli yksi Itämeren alueen hansakaupungeista. Kaupungista tuli myös baltteja kristinuskoon käännyttäneen kalparitariston keskuspaikka. Liivinmaan sodassa (1558–1583) ja Puolan–Ruotsin sodassa (1600–1622) Viljandi oli sotatantereena. Liivinmaan sodan aikana tuhoutui muun muassa kaupungissa sijainnut fransiskaaniluostari.