1235. aastal alustas aga Friedrichi vanem poeg Heinrich tema vastu mässu, millega liitusid ka Lombardia linnad. Pärast aastapikkust sõda õnnestus Friedrichil Heinrich vangistada, Saksa kuninga tiitel anti üle aga Konradile. Järgneval 15 aastal toimus keisri ja paavstide vahel pidev võitlus. 1245. aastal kuulutas Innocentius IV Friedrichi ketseriks ja kutsus kõigi vahenditega tema vastu võitlema. Järgnes viie aasta pikkune sõda Itaalias, mis kulges vahelduva eduga. Mitmed vürstid hoidsid kirikuvande alla pandud monarhi poole, kuid paavstil õnnestus end Roomas siiski kindlustada. Tema selja taga oli ka Prantsusmaa kuningas Louis IX, kes küll isiklikult keisri vastu sõtta ei läinud, sest pidas keisrit kõigest hoolimata rahusoovlikuks ja kristlikuks.