The first mention of Balvi was in 1224. A small wooden church and manor were constructed on the estate of a Polish noblewoman at the site ca. 1765. When Latgale came under Russian rule in 1772, the estate was granted to the Yelagin family by Catherine II. In 1806 it passed to the Horozhinsky family and in 1876 the estate was purchased by the Baltic German Transehe-Roseneck family. The village was separated from the estate in 1915, and Balvi received town rights in 1928.
Most of the town's Jews (around 19% of the population) perished in the Stahlecker phase of the Holocaust in August 1941. The retreating Germans set fire to Balvi in July 1944, and the town was rebuilt according to Soviet plans from 1945. Balvi was a center of the Singing Revolution and is vital to Latgalian culture today. The town library in particular is the focus of many cultural events.