Die erste urkundliche Erwähnung der östlich von Walpertskirchen gelegenen Ortschaft Obergeislbach erfolgt bereits Ende des 8. Jh. Im Jahr 780 übertrug ein gewisser Adalo die Hälfte seines Besitzes mit Kirche in Kisalpah an die Benediktuskirche in Maganpah (Bennoberg hei Mainbach. Lkr. Traunstein).
Im 9. Jh. ist die Kirche in Freisinger Besitz nachgewiesen.
Im 15. Jh. taucht erstmals die Bezeichnung Oberngeyslpach auf.
Das Gotteshaus, das nachweislich bereits zu Ende des 8. Jh. bestanden hat. wird 1315 und später im 16. und 18. Jh. als Filiale von Walpertskirchen genannt.
Die heutige Kirche stellt im wesentlichen einen romanischen Bau des 12./13. Jh. dar. Wohl in der zweiten Hälfte des 15. Jh. wurden die Umfassungsmauern erhöht und die Kirche eingewölbt sowie die Vorhalle und die Sakristei an der Südseite der Kirche angebaut.
1701 und 1738/40 sind drei Altäre in der Kirche bezeugt. Der Hochaltar enthielt eine Figur der Muttergottes, die Seitenaltäre waren den beiden Hl. Johannes sowie den Hll. Erhard und Ottilia geweiht.
Veränderungen am Kirchenbau erfolgten noch Ende des 17. Jh. Damals dürfte der barocke Turmoberbau entstanden sein. Gegen Ende des 18. Jh. erfolgte eine Ausbesserung der Ausstattung. Die Aufbauten der drei Altäre werden dem Dorfener Schreiner Matthias Fackler zugeschrieben und wohl um 1778 von dem Erdinger Maler Franz Zellner gefasst.
1862–1865 fand eine Instandsetzung der Kirche statt. Ab 1916 begannen die Planungen zu einer gründlichen Ausbesserung der Kirche die schließlich ab 1919 durch den Maler Peter Keilhacker aus Taufkirchen an der Vils vollzogen wurde.
1935 wurde der Turm ausgebessert. 1958 wurde die Kirche Innen und 1974 Außen renoviert, wobei das verputzte Deutsche Band wieder freigelegt werden konnte.