Josvainių dvare XVI a. buvo koplyčia. 1590 m. pastatyta medinė bažnyčia (konsekruota 1604 m.). Manoma, kad bažnyčia 1655 m. buvo sunaikinta, nes 1665 m. konsekruota.1818 m. bažnyčiai pakeisti sienojai, 1855 m. – pristatytos dvi šoninės koplyčios, 1858 m. – pastatyta mūrinė koplyčia.
1897 m. patvirtintas naujos mūrinės bažnyčios projektas. Bažnyčia pradėta statyti 1898 m. 1920 m. konsekruota.
Ši didelė mūrinė kryžminio plano bažnyčia yra neogotikinio stiliaus. Ji stovi galu į Šušvės upę, kur vandeny atsispindi visu aukščiu. Tarp dviejų fasadinių bokštų iškyla trikampis frontonas, suskaidytas į daug siaurų nišų. Viršutinis bokštų tarpsnis yra aštuoniasienis su žemais įžambiais kontraforsais ir aštuoniais trikampiais frontonėliais. Virš arkinio portalo matomas dar didesnis rijų dalių langas su bendra apjungiančia arka. Fasado ir šoninių sienų kontraforsai laiptiškai siaurėja. Sienų paviršiai plytiniai, netinkuoti. Transeptų stogai nuolaidūs, valminio tipo, lydaus aukščio su vidurine nava. Aukšti navų skliautai sujungti smailiomis arkomis, suskaidyti nerviūromis. Piliastrai ir pilioriai padabinti siaurais kaneliūrais. Tai yra vertikalūs grioveliai, būdingi gotikos stiliui. Sudaro lengvą, grakštų įspūdį sunkioje mūro statyboje. Didysis altorius gotiškai išpuoštas statulomis, drožiniais ir pinakliais.