12. gadsimtā Viļakas ezerpils piederēja latgaļu Atzeles zemei. 1224. gadā pēc Atzeles dalīšanas Purnava, Bērzene, Abelene un Abrene tika nodotas Livonijas bīskapijai.
1629. gadā pēc Altmarkas miera līguma Viļaka kļuva par Marienhauzenas stārastijas centru un administratora rezidenci.
Lielā Ziemeļu kara laikā Marienhauzenas pils tika pilnīgi nopostīta.
Pilsēta izveidojusies un attīstījusies pie ezera. Kādreiz te krustcelēs bijis Krapāna traktieris. Pie ceļa, kas ved uz Žīguriem, izveidojies viens no jaunākajiem pilsētas rajoniem, kur uzceltas Līvānos ražotās saliekamās mājas.
Viļakas katoļu baznīca (celta no 1884. līdz 1890. gadam) — historicisma arhitektūras paraugs, kurā celtnes gotiskās formas papildina slaidu egļu apstādījumi. Tā ir viena no ievērojamākajām neogotikas baznīcām Latvijā, kuru var salīdzināt vienīgi ar Rīgas Sv. Franciska, Līksnas vai Dignājas katoļu dievnamiem. Baznīcu projektējis Florians Viganovskis, kas ir arī Rēzeknes Vissvētākās Jēzus sirds Romas katoļu katedrāles projekta autors. Baznīca ir valsts nozīmes arhitektūras piemineklis.
Viļakā darbojas Vissvētākās Jēzus Sirds Romas katoļu draudze, evaņģēliski luteriskā draudze un Vissvētās Dievmātes patvēruma pareizticīgo draudze.
Viļakas Romas katoļu draudze pastāvējusi jau 1712. gadā. 1716. gadā tika nolemts atjaunot baznīcu. Otra koka baznīca Viļakā celta 1748. gadā. 1890. — 1891. gadā uzcēla jaunu baznīcu, kas tika konsekrēta Vissvētākās Jēzus Sirds godam. 1920. — 1925. gadam draudzes dekāns bija P. Apšinīks.[4] Viņš nodibinājis draudzes skolu. Pašreiz draudzes prāvests ir Jāzeps Kornaševskis.[6]
Viļakas evaņģēliski luteriskā draudze dibināta 1920. gadā. Sākumā dievkalpojumi noturēti skolā. Baznīca celta pēc J. Cīruļa projekta un iesvētīta 1928. gadā. 1939. gadā tā ieguva jaunas ērģeles. Interjerā izceļas altārglezna "Jēzus ar mācekļiem iet caur labību", kuras autors ir viršmežzinis Reinholds. Mācītāji, kas tajā laikā vadīja draudzi bija galvenokārt no Balvu, Rēzeknes, kā arī no Abrenes draudzes un bieži mainījās.
Pareizticīgo baznīca uzcelta 19. gadsimta beigās (atjaunota 1990. gadā) bijušā seno latgaļu Eržepoles pilskalnā. Tur atrodas arī kapi.
1937. gadā Viļakā tēvs Toms Gumperbergs nodibināja kapucīnu ordeņa klosteri un uzcēla lielu divstāvu mūra ēku ar kapliču, kuru Romas pāvesta nuncijs iesvētīja 1940. gada pavasarī. Klosteri uzcēla vietā, kur kādreiz atradās 1784. gadā celtā koka vecā Romas katoļu baznīca. Kopš 1997. gada klosteri atjauno.
Mūsdienās Viļakā vairs nav sinagogas, bet pirms Otrā pasaules kara Viļakā gandrīz 1/3 iedzīvotāju bija ebreji.[4]