Tverečiuje 1501 m. pastatyta medinė bažnyčia, įkurdinti reguliarieji atgailos kanauninkai. 1622 m. Petras Pacas bažnyčiai paskyrė Erzveto palivarką ir Kukučių kaimą. Jo žmona 1644 m. dovanojo Jauniškės kaimą. Trakų vaivada Mikalojus Pacas 1662 m. pastatė naują bažnyčią ir vienuolyną. XVIII a. pabaigoje veikė parapinė mokykla. 1812 m. bažnyčia apiplėšta, išvogti sidabriniai liturginiai reikmenys. Rusijos valdžia 1832 m. vienuolyną uždarė. Vietoj sudegusios 1862 m. pastatyta nauja medinė bažnyčia.
1880–1885 m. Tverečiuje klebonavęs Jonas Burba pamokslus sakė ir pamaldas laikė lietuviškai. Jo rūpesčiu 1884 m. suprojektuota nauja mūrinė bažnyčia, valdžia statyti neleido. 1886–1892 m. klebonavęs Mykolas Masiulis (1857–1906) klebonijoje įsteigė slaptą lietuvišką mokyklą. Caro valdžia jį 1891 m. uždarė į Gardino vienuolyną. XIX a. antrojoje pusėje į Tverečių buvo skiriami lietuviškai nemokantys kunigai. Vikaras K Majevskis pramoko lietuviškai ir apie 1875 m. pamokslus ėmė sakyti lietuvių kalba. Kai bažnyčioms statyti nereikėjo valdžios leidimo, inžinierius B. Kokijevskis-Kozėla 1898 m. suprojektavo kitą mūrinę bažnyčią. Klebono Antano Slapšio-Slapšinsko pastangomis ir parapijiečių lėšomis 1906 m. pastatyta dabartinė (1901 m. senoji bažnyčia nugriauta, pamaldos laikytos klebonijoje).
Per Pirmąjį pasaulinį karą buvo apgriauti bažnyčios bokštai. Iki 1925 m. suremontuoti. Arkivyskupo Romualdo Jalbžikovskio 1928 m. įsakymu Tverečiaus bažnyčioje pamaldos pradėtos laikyti tik lenkų kalba. Nuo 1932 m. vargonininkavęs Leonas Bielinis (1882–1941) Tverečiaus apylinkėje užrašė liaudies dainų su melodijomis, rinko tautosaką. Klebonas Mykolas Prielgauskas 1936 m. teistas neva už pavardžių lietuvinimą. Nuo 1948 m. klebonavęs Juozapas Karaliukas (1908–1963) 1951 m. suimtas ir 5 m. kalintas.
Bažnyčia neogotikinė, stačiakampio plano, dvibokštė, su žemesne apside. Vidus bazilikinis, 3 navų, atskirtų pilioriais, skliautuotas. Šventoriaus tvora akmenų mūro.