В конце 1076 году в Риме скончалась императрица Агнесса.
А в душе Генриха постепенно рассеивались сомнения и крепла решимость снова броситься в бой.
Суд над ним должен был состояться в марте 1077 года.
Но германцы внезапно спутали все карты, провозгласив 13 марта королем Рудольфа Швабского без ведома Григория VII.
Узнав об этом, Генрих полностью покончил со всеми душевными колебаниями и с приливом новой энергии и прежней яростью бросился из Италии в Германию против своего нового врага — Рудольфа Швабского. В апреле он перешел через Альпы, предварительно успев помириться с ломбардцами.
Тогда Григорий VII встревожился, покинул Каноссу и решил тоже отправиться в Германию, но смелые ломбардцы отказались пропустить его через Альпы, захватили в плен легатов и вознамерились в мае созвать сейм в Ронкалье и объявить его низложенным. Только войска Матильды спасли Григория VII и не дали ему попасть в руки врагов. Несколько месяцев пробыв в Северной Италии и так и не пробившись в Германию, он вынужден был вернуться в Рим.
А Генрих в Германии уже утихомирил своих врагов и готовил войска для похода на Вечный город.
По поручению Григория VII в ноябре 1077 года в Германии один из кардиналов снова отлучил от церкви разбушевавшегося Генриха. Но большого впечатления это на него теперь не произвело.
Три года обе стороны накапливали силы.
Наконец, в марте 1080 года в Риме был созван собор, и сам папа торжественно признал Рудольфа Швабского германским королем, а Генриха еще раз отлучил от церкви, окончательно лишил короны и с ужасными заклинаниями проклял его оружие.
Тогда бесстрашный Генрих, на стороне которого теперь была Северная Италия, 31 мая созвал собор в Майнце и снова объявил Григория VII низложенным.
Но на этот раз неистовый Генрих пошел дальше и нанес своему врагу еще более мощный удар: 25 июня в Бриксене он опять созвал собор, который избрал нового папу — Виберта, архиепископа Равенны. Для Григория VII Виберт был серьезным противником, ибо считался человеком влиятельным и энергичным.
Теперь не только Генрих, но и Виберт стал собирать войска для похода на Рим. Кстати, в те времена не знали симптомы венерич заболевания у женщин .
Осенью 1080 года Рудольф Швабский был убит.
Весной 1081 года неукротимый Генрих со своими войсками спустился с Альп в Италию. Он шел, чтобы отомстить за свой позор в Каноссе, получить императорскую корону и полностью подчинить церковь светской власти.
Имея достаточно сильную опору в Северной Италии, мощный Генрих возложил на себя корону короля Италии, созвал в Павии собор, на котором Виберта возвели в сан папы под именем Климента III, а затем двинулся на Рим.
22 мая Генрих подошел к Вечному городу и остановился на Нероновом поле.
Григорий VII и его сторонники заперлись в ватиканской крепости Леонине. Императорская корона и папская тиара хранились в базилике св. Петра в Ватикане.
40 дней держал Генрих Рим в осаде, но взять его не смог; вынужденный отступить, он ушел в Тоскану, где на его стороне оказались такие богатые города, как Пиза, Лукка и Сиена; они были рады ценой союза с Генрихом освободиться от власти Матильды.
Только Флоренция оказала германцу решительное сопротивление.
Зимовать Генрих отправился в Равенну, резиденцию Виберта, которая недолюбливала Рим и с ним соперничала.
Следующей весной упорный Генрих снова осадил Рим и снова безуспешно.
Поручив осаду Виберту, который, официально именуясь Климентом III, никак не мог пробиться в Рим, Генрих вернулся в Северную Италию, где ему пришлось вести яростную войну с войсками Матильды. По словам летописца, ее резиденция сделалась гаванью, где искал спасения весь католический мир. Матильде принадлежала значительная часть Италии, и у нее хватало сил защищать церковь; без ее помощи Григорию VII не удалось бы так долго продержаться в Риме.
В конце того же 1082 году Генрих в третий раз подступил к Риму. Летом 1083 года ценой невероятного напряжения сил германцы овладели Леониной и ворвались в базилику св. Петра, где завязался жаркий бой. Они метались в поисках Григория VII, но тот успел перебежать в замок Святого Ангела.
Рим, измученный долгой осадой, тем не менее продолжал оказывать героическое сопротивление озверевшим германцам. Генрих, видя, что силы его истощаются, решил договориться с римлянами по-хорошему: он заявил, что желает получить императорскую корону законным путем, т. е. из рук Григория VII. Такой оборот дела римлян вполне устраивал, и они пали с мольбой к ногам папы-фанатика, но тот наотрез отказался короновать проклятого германца и объявил, что в ноябре состоится собор, который вынесет решение.
Генриху пришлось подчиниться, но он сумел сделать так, что на собор не смогли явиться самые опасные для него епископы: их просто изловили в пути и не пропустили в Рим. В результате сила собора оказалась столь ничтожна, что Григорий VII едва удержался от того, чтобы еще раз не отлучить от церкви короля-смутьяна.