Ziemeļlatgales atbrīvošanas operācija

Priekšvēsture

1919. gada maijā un jūnija sākumā Latvijas un Igaunijas bruņotie spēki atspieda Padomju Latvijas armiju līdz Latgalei, bet 1919. gada jūnijā pēc konflikta ar Baltijas landesvēra un Dzelzsdivīzijas daļām uzbrukums apsīka. Tā kā pāri Pededzes upes līnijai Ziemeļlatvijas brigāde un Igaunijas armija negāja, tad sarkanarmieši nocietinājās pozīcijās Austrumlatvijas zemienes purvājos un mežos no Lubānas ezera ziemeļu gala līdz līnijai Augustova-Pakrata-Krutova-Egļeva-Kuprava-Liepna. 1919. gada 5. jūnijā Ziemeļlagales partizānu grupu pārstāvji  Balvu sanāksmē nolēma apvienoties vienā pulkā, 7. jūlijā no partizānu grupām virsleitnanta Jāņa Vīndedža vadībā nodibināja Latgales partizānu pulku. 7.-9. novembrī Sarkanā armija devās pretuzbrukumā un atguva oktobra kaujās zaudētās pozīcijas.
Sakarā ar Deņikina vadītās armijas uzbrukumu karadarbība apklusa, kas Padomju Krievijai ļāva pārmest latviešu strēlnieku divīziju no Latgales uz Dienvidu fronti un sakaut Dienvidkrievijas armiju Orlas-Kromu kaujās un ģenerāļa Judeniča komandēto Ziemeļrietumkrievijas armiju pie Petrogradas 1919. gada beigās. Krievijas Rietumu frontē Ziemeļlatgalē atradās III atsevišķās Petrogradas brigādes pulki KPFSR 15. armijas sastāvā. 
Bermontiādes cīņu laikā 1919. gada novembrī Polijas valdība piedāvāja Latvijas valdībai noslēgt pret Padomju Krieviju vērstu militāro savienību. Sarunas beidzās ar līguma parakstīšanu un kopīgas militārās operācijas "Ziema" izstrādāšanu. Par operācijas sākumu nolika 1920. gada janvāra sākumu.
8. Daugavpils kājnieku pulks pirms uzbrukuma nomainīja Latgales partizānu pulka vienības no Balvu-Viļakas lielceļa līdz Liepnai.

Operācijas plāns

Latvijas bruņoto spēku virspavēlnieks Jānis Balodis pavēlēja uzbrukumu Ziemeļlatgalē izdarīt ar Latgales divīzijas 7. Siguldas un 8. Daugavpils pulka un Latgales partizānu pulka spēkiem.  Kurzemes divīzijas 1. Liepājas un 2. Ventspils pulkam bija jāpabalsta uzbrukums no Lubānas ezera rajona.  
Ziemeļlatgales atbrīvošanas operāciju vadīja Latgales divīzijas štābs Gulbenē pulkveža Berķa vadībā, viņa padotībā pārgāja arī Kurzemes divīzijas 1. Liepājas un 2. Ventspils pulki. 
8. Daugavpils kājnieku pulkam ar 8 lielgabaliem un 1 bruņoto vilcienu uzbrukt divos virzienos - gar dzelzceļu Viļakas virzienā un Katlešu-Bubencovas virziena un pārraut Pitalovas-Ostrovas dzelzceļu ziemeļaustrumos no Pitalovas.
Latgales partizānu pulkam ar 4 lielgabaliem pavēlēja uzbrukt divos virzienos - Kārsavas virzienā un Pitalovas virzienā.  
7. Siguldas kājnieku pulkam bija jāpaliek divīzijas rezervē. Latgales eskadronam bija jānodrošina ceļu uz Kūdupi.
2. Ventspils kājnieku pulkam ar 4 lielgabaliem traucēt ienaidnieku un izvirzīties līdz Ošas upei. 1. Liepājas kājnieku pulkam ar 2 lielgabaliem jāpabalsta Latgales partizānu pulku un ieņemt līniju Varakļāni-Dzilari-Stružāni.

Karadarbības norise

9. janvāra rītā pulka I bataljons uzbruka Viļakai no ziemeļiem, bet II bataljons ar riteņbraucēju rotu uzbruka gar Stompaku-Viļakas ceļu no dienvidiem. Pēc uzvaras kaujā pie Svilpovas ap 11.00 abi bataljoni ieņēma sarkanarmiešu nocietinājumus Viļakā. Pēc tam I bataljons turpināja uzbrukumu uz ziemeļiem un ziemeļaustrumiem, bet tika apturēts pie Cūkines, kur sarkanarmiešus ar stipru ložmetēju un artilērijas uguni atbalstīja bruņuvilciens „Steņka Razins”.
Latvijas bruņuvilciens bija daudz vājāk apbruņots un nespēja padzīt ienaidnieka bruņuvilcienu no Vecumu stacijas. Kad riteņbraucēju rota iesāka dzelzceļa postīšanu, bruņuvilciens atgāja Pitalovas virzienā. 8. Daugavpils pulka III bataljons no Liepnas veica 20 kilometru garu pārgājienu līdz Katlešiem, kurus ieņēma naktī. Tādējādi 8. Daugavpils pulks 10. janvāra rītā atradās līnijā Viļaka-Indriči-Katleši.
Latgales partizānu pulka I bataljonam izdevās pārraut ienaidnieka fronti pie Tilžas un vakarā sasniegt līniju Kozukolns-Salnava-Ruskulova tagadējā Salnavas pagastā. III un IV bataljons neveiksmīgi uzbruka 15. armijas sevišķu uzdevumu pulkam pie Šķilbanu augstumiem un cieta sakāvi. 
1. Liepājas pulka II bataljons ieņēma Strūžānus, 2. Ventspils pulka III bataljons vakarā sasniedza Varakļānus. 
2. Ventspils pulka II bataljons kopā ar bruņuvilcienu uzbruka gar Krustpils-Rēzeknes dzelzceļu, bet I bataljons sasniedza Ošas upi.
10. janvārī 8. Daugavpils pulks ieņēma Vecumu staciju un Borisovu, saņēma gūstā Petrogradas brigādes komandieri un komisāru.
Latgales partizānu pulks ar lielgabalu uguns pabalstu atkārtoti mēģināja ieņemt Šķilbanu augstumus, tomēr ienaidnieks visus uzbrukumus atsita. Toties šī pulka I bataljons pārrāva ienaidnieka pozīcijas un ar jātnieku eskadronu ieņēma Kārsavas staciju, bet nespēja ieņemt miestu.
2. Ventspils pulks ieņēma Varakļānus un Stirnieni.
10. janvārī KPFSR 15. armijas komandieris uzdeva 4. divīzijas komandierim likvidēt frontes pārrāvumu un nodeva viņa rīcībā 53. divīzijas II brigādi, 3. divīzijas II brigādi un 1. strēlnieku pulku. 
11. janvārī 8. Daugavpils pulks sasniedza Kuhvas upi pie Stupāniem (Skordiem) un Krauliem, kas šobrīd atrodas Krievijā. Latgales partizānu pulks ar aplenkuma palīdzību beidzot piespieda 15. armijas sevišķu uzdevumu pulkam atstāt savas pozīcijas Škilbanu augstumos un atiet aiz Kuhvas upes. I bataljons ieņēma Kārsavas miestu. 1. Liepājas pulka III bataljons ieņēma Baltinavu un, lai traucētu bruņuvilcieniem, pie Skangaļu stacijas izjauca dzelzceļa sliedes.
12. janvāra rītā sākās 8. Daugavpils pulka uzbrukums Pitalovai. Latgales partizānu pulks pie Kārsavas cīnījās ar KPFSR 471. pulku, kurš nesen bija pārvests no Igaunijas frontes. 2. Ventspils pulks ieņēma Viļānus un izturēja ar diviem bruņuvilcieniem pabalstīto KPFSR 472. pulka pretuzbrukumu. 
13. janvārī Latvijas armija kopā ar Polijas armiju sāka uzbrukumu visā Austrumu frontē, lai nedotu ienaidniekam iespēju sakoncentrēt lielus spēkus un izdarīt plašāku pretuzbrukumu. 8. Daugavpils pulks ieņēma labi nocietināto Gorku sādžu.
14. janvārī Latgales partizānu pulks sasniedza Grebņevu un Skangaļus, ar bruņuvilciena pabalstu ieņēma Nosovas (Purvmalas) un Pitalovas stacijas.
15. janvārī Latgales partizānu pulks ieņēma Malnavas muižu.