Anykščių rajone Kavarsko mokykla įsteigta 1865 m. rugsėjo 1 d. Nuo 1865 metų veikė trijų skyrių pradinė mokykla. Joje mokėsi 35 mokiniai, dirbo mokytojas Lebedevas. Mokykla priklausė gubernijai, ją išlaikė valstybė. 1911 metais mokykloje įvesta lietuvių kalba. Nuo 1914 metų mokykla tampa pradine keturių klasių mokykla. 1925–1930 metais Kavarske veikė atskira žydų mokykla, 1930 metais jos mokiniai prisijungė prie lietuviškosios pradinės mokyklos.
1939 metais pastatyta nauja 6 skyrių mokykla. Plytas mokyklai nupirko Amerikoje gyvenantis Pranas Kalibatas, kuris kilęs iš Žvirblėnų kaimo (Kavarsko sen.). Mokykloje dirbto 6 mokytojai, mokėsi apie 80 mokinių. Mokyklai vadovavo vedėjas Beišys.
1944 metais mokykla reorganizuota į progimnaziją, o nuo 1947 m. į nepilną vidurinę, kurios direktorius buvo Petras Martusevičius. 1951 metais mokykla tapo vidurine, išleista pirmoji abiturientų laida. Mokėsi 512 mokinių, dirbo 34 mokytojai. Direktorius P. Didžiariekis. Mokinių skaičius augo. 1966 metais pastatytas mokyklos priestatas ir sporto salė, 1984 metais pastatytas dar vienas priestatas, aktų salė, įrengta valgykla. Mokyklai priklausė 4 pradinio ugdymo skyriai (Janušavos, Jakšiškio, Budrių, Svirnų).
2014 m. mokykla tampa pagrindine, išsaugojusi ir Anykščių Jono Biliūno gimnazijos padalinio statusą. Padalinys panaikintas 2023 m. rugpjūčio 31 d. 2020 m. mokykla buvo pripažinta geriausia tarp Lietuvos pagrindinių mokyklų, kuriose mokosi iki 20 dešimtokų. 2020 m. rugsėjo 1 d. prie mokyklos prijungiamas Traupio skyrius, o 2022 m. rugpjūčio 31 d. panaikintas.
Nuo 1990 iki 2016 metų mokyklai, vadovavo direktorė Genė Leitienė, nuo 2016 metų direktorė yra Loreta Daugėlienė.
Mokykloje yra biblioteka, sensorinis kabinetas, o nuo 2000 metų veikia skaitykla, kompiuterių klasės. Mokykla turi ikimokyklinę ir priešmokyklinę ugdymo grupę bei pailgintą dienos grupę. Mokykloje mokosi 1-10 klasių mokiniai. Mokykloje teikiamos socialinės paslaugos gyventojams: skalbimas, dušai, treniruoklių salės. Mokykla turi dvi modernias lauko aikštelės.
Šaltinis: Nyksciai