Popadł w konflikt z papieżem Grzegorzem VII o inwestyturę, a bezpośrednio nieuznanie biskupa Mediolanu mianowanego przez Grzegorza VII. Henryk osłabiony wojną domową w Niemczech i ekskomuniką nałożoną na niego przez papieża, chcąc utrzymać się przy władzy, wraz z małym orszakiem udał się do Włoch w celu przebłagania papieża. Zastał go w zamku Kanossa, gdzie w styczniu 1077 roku ukorzył się przed nim, pokutując trzy dni pod murami zamku w worku i boso. Naciskany przez doradców papież 28 stycznia 1077 roku zdjął z Henryka klątwę. Papieska ekskomunika dotyczyła przypisania Henrykowi twierdzenia o trzech oszustach (Jezusie, Mojżeszu i Mahomecie), którzy zdaniem cesarza swymi naukami omamili ludzkość.

Król wrócił do Niemiec, gdzie zastała go nowa wojna. Saska opozycja obrała królem Rudolfa Szwabskiego. Po trzech latach zamieszek wewnątrzniemieckich zwyciężył Henryk, który pokonał Rudolfa w 1080 roku w bitwie pod Hohenmölsen, w której zginął sam antykról. Henryk opanował sytuację w Niemczech. W 1083 roku na czele armii wyruszył do Włoch, by rozprawić się z papieżem. Kolejne papieskie klątwy nie osiągnęły celu i choć życie papieża uratowali Normanowie, to został on wygnany do Salerno, gdzie wkrótce zmarł.