L’edificio, collocato nei pressi della riva del lago, presenta un sobrio disegno di gusto tardo neoclassico, ma la chiesa ha probabilmente origini romaniche come sembrano testimoniare i resti dell’antico campanile a lato dell’attuale torre campanaria.
La facciata è preceduta da un pronao su colonne doriche ed è scandita da quattro lesene su alto basamento sormontate da timpano sommitale. L’interno a navata unica ha due cappelle laterali ed un breve transetto. Le pareti sono scandite da pitture murali con quadrature e figure di Santi (S. Pietro, S. Luigi, S. Agnese, S. Paolo).
Lungo la navata sono rappresentate due scene con l’Annunciazione e Gesù con i fanciulli, sulla volta centrale l’Arcangelo Michele scaccia i demoni e nei pennacchi le allegorie delle Virtù (Fede, Carità, Fortezza e Giustizia).
La cappella sinistra, dedicata a S. Giuseppe, conserva una statua di S. Giuseppe col Bambino, inserita in un’ancona in stucco.
La cappella destra, dedicata alla Madonna del Carmelo, ha un’ancona con colonne ionico corinzie sormontate da statue di angeli e conserva entro la nicchia centrale una statua lignea della Madonna.
L’altare maggiore è ornato da una pala settecentesca, raffigurante S. Michele che uccide il demonio, inserita in un’elegante cornice mistilinea.
In un locale dietro l’altare si conservano lacerti di interessanti affreschi del XV secolo che rappresentano la Crocifissione affiancata da due figure di angeli inserite in un singolare paesaggio turrito.
Le descrizioni delle visite pastorali documentano che nel XVI secolo l’edificio presentava un’aula unica con affreschi sulla volta del presbiterio ma nella seconda metà del Seicento fu realizzato un primo ampliamento con l’aggiunta di una cappella laterale, dedicata alla Madonna del Carmine e ornata di stucchi, e in seguito la chiesa fu consacrata nel 1773 dal vescovo Mugiasca.
Nel 1877 l’edificio fu completamente ricostruito e in seguito fu oggetto di nuovi lavori di decorazione eseguiti dal pittore torinese Luigi Morgari. Nel 1945 fu aggiunta la nuova torre campanaria su progetto dell’architetto Riccardo Briani.