Viļakas vēsture aptver laika periodu kopš Viļakas pils dibināšanas Atzeles zemē. Īpaša nozīme Viļakas vēsturē ir Rīgas arhibīskapijas Marienhauzenas pilij, kas kalpoja par Inflantijas vaivadijas Marienhauzenas stārastijas centru.

Marienhauzenas pilsdrupas uz ezera salas 1747. gadā (Broces arhīvs)
Viļakas novada muzejs

Atzeles sastāvā

labot šo sadaļu

12. gadsimtā apmetne Viļakas ezerā piederēja latgaļu Atzeles zemei, par kuru cīnījās arī ugauņi un Pleskavas krievi. Viļakas ezerpils bija Purnavas jeb Pornavas novada centrs. 1224. gadā pēc Atzeles dalīšanas Purnava, Bērzene, Abelene un Abrene tika Livonijas bīskapijai.

Rīgas arhibīskapijas sastāvā

labot šo sadaļu

1293. gadā Rīgas arhibīskaps Johans Fehte savu Atzeles īpašumu katolizēšanai un aizsargāšanai pret Novgorodas kņazu iebrukumiem uz Viļakas ezera salas nodibināja klosteri Marienhausen. 1478. gadā Maskavija anektēja Novgorodu un Maskavas lielkņazs Ivans III pieprasīja Livonijas Konfederācijai maksāt uz 13. gadsimta līgumiem balstītos Novgorodai nesamaksātos meslus Maskavijai. 1509. gadā arhibīskaps Jaspers Linde uz salas uzcēla mūra ezerpili aizsardzībai pret Maskavijas karaspēka iebrukumiem. 1559. gadā arhibīskaps Vilhelms fon Brandenburgs Viļaku ieķīlāja Polijas karalim Sigismundam II Augustam, kā rezultātā turpmākā Viļakas vēsture saistāma ar Latgales kultūrvēsturisko novadu. 1560. gadā Marienhauzenas pilī ieradās poļu garnizons.

Pārdaugavas hercogistes sastāvā

labot šo sadaļu

1561. gadā pēc Viļņas ūnijas noslēgšanas Viļaka nonāca Pārdaugavas hercogistes sastāvā. Marienhauzenas pils kļuva par pilsnovada pārvaldes centru. Iepretim pils salai izveidojās Viļakas senpilsēta. 1577. gadā Livonijas kara laikā Krievijas cars Jānis Briesmīgais nopostīja Viļaku. 1582. gadā Polijas karalis Stefans Batorijs atguva Viļaku un lika pili atjaunot. 1601. un 1625. gadā Viļakas pili ieņēma zviedri, un pils tika nopostīta vēlreiz. 1629. gadā pēc Altmarkas miera līguma Latgale (Inflantijas vaivadija - województwo inflanckie), tika atdalīta no Vidzemes, kas palika Zviedrijas pārvaldē. Viļaka kļuva par Marienhauzenas stārastijas centru un jaunā administratora rezidenci. Tomēr Viļakas stārasti - ievērojamie magnāti no Hilzenu dzimtas - šeit uzturējās reti, un pils kalpoja galvenokārt kā garnizona apmetne.

Krievijas Impērijas sastāvā

labot šo sadaļu

Lielā Ziemeļu kara laikā Marienhauzenas pils tika pilnīgi nopostīta. Pēc Polijas-Lietuvas kopvalsts pirmās dalīšanas Viļakas stārastija 1772. gadā tika inkorporēta Krievijas Impērijas sastāvā - Pleskavas, Polockas, Baltkrievijas un Vitebskas guberņas sastāvā.

Pēc Latvijas Republikas dibināšanas

labot šo sadaļu
 
Viļakas ģimnāzija (1931)

Latvijas brīvības cīņu laikā Viļaku Ziemeļlatgales atbrīvošanas operācijas ietvaros 1920. gada 9. janvāra rītā ieņēma 8. Daugavpils kājnieku pulks. Pēc Latvijas Republikas nodibināšanas daudz pūļu tika pielikts Latgales pierobežas pagastu attīstīšanai. Viļakā tolaik darbojās katoļu, pareizticīgo un luterāņu draudzes, ģimnāzija, divas pamatskolas un mežkopības skola. 1925. gadā Jaunlatgales apriņķa Viļakai (Viļākiem) piešķīra biezi apdzīvotas vietas (ciema) statusu. 1931. gadā uz Viļakas muižas pamatiem uzbūvētā ēkā atklāja Viļakas Valsts ģimnāziju.

Pēc Otrā pasaules kara 1945. gada 8. oktobrī Viļakai piešķīra pilsētas tiesības un četras dienas vēlāk tā kļuva par Latvijas PSR Viļakas apriņķa (agrākā Abrenes apriņķa) centru. No 1949. gada līdz 1959. gadam Viļaka bija Abrenes rajona centrs, pēc tam atradās Balvu rajonā.

Pēc 2009. gada Latvijas teritoriāli administratīvās reformas kļuva par Viļakas novada centru.