Опасаясь нападения со стороны аваров, император решил увеличить выплачиваемую им дань, чтобы иметь возможность закончить войну к весне 623 г. Однако Хосров не собирался отдавать захваченные византийские провинции или тем более сдаваться. На предложение мира он ответил оскорбительным письмом, направленным как против Ираклия, так и против христианства. В передаче армянского историка Себеоса ответ шаха начинался так: «Хосров, любимец богов, царь и господин всей земли, сын великого Армазда, нашему рабу безумному и бесчестному Ираклию»[3]. В этой ситуации Ираклий направил свои войска через Каппадокию в сторону Армении. При дружественном отношении христианского населения императору было легче защищаться от персидских атак и самому переходить в наступление. Многие города, в которых находились персидские гарнизоны, постигала печальная участь: так, Двин и некоторые другие города были стерты с лица земли. К югу от Армении Ираклию удалось взять Ганзак – столицу первого Сасанидского царя Ардашира. Древнее зороастрийское святилище было разрушено. Вероятно, это воспринималось византийцами как месть за взятие Иерусалима. На этом продвижение вглубь персидской территории пока что закончилось: Ираклию приходилось оставаться на спорных с персами территориях Закавказья, пополняя свою армию за счет лазов, абазгов и грузин. В 625 г. также не произошло существенных изменений.
Пока император находился в далеком походе, Константинополю пришлось пережить один из опаснейших моментов своей истории: персам удалось договориться с аварами, пусть и получавшими от византийцев большую дань, и вместе с ними в 626 г. осадить столицу. На стороне аваров был значительный славянский флот, а персы смогли пройти через всю Малую Азию и укрепиться в Халкидоне. В отсутствие Ираклия принятие решений в столице в первую очередь ложилось на плечи патриарха Сергия, заодно являвшегося регентом при малолетнем наследнике. Исход этой опасной осады был решен с помощью греческого огня, попалившего весь славяно-аварский флот. Для аваров этого военного и психологического поражения было достаточно, чтобы отойти от Города, а без них персы не хотели пытать счастья, имея у себя в тылу армию Ираклия. Вероятно, именно с этой осадой Константинополя связано создание первого
После снятия осады Константинополя император еще два года не появлялся в столице, но зато поход против Персии, предпринятый Ираклием в это время, оказался для нее смертельным. Пока что военные действия продолжались в Закавказье, и Ираклий обрел здесь новых союзников в лице хазар: вместе с ними он предпринял осаду Тбилиси, но она закончилась неудачей, в то время как армянские земли и некоторые другие территории Закавказья оказались под византийским контролем. В 627 г. Ираклий приготовился к походу вглубь собственно персидских территорий. В таком далеком и опасном предприятии хазары решили участия не принимать, и византийской армии осталось рассчитывать на свои силы. Решительное сражение произошло в начале декабря 627 г. у развалин древней Ниневии на реке Тигре (через реку, напротив Ниневии, расположен современный иракский город Мосул). Персидская армия оказалась полностью разбита, и больше не было сил, способных сопротивляться продвижению византийских войск по Междуречью. В начале 628 г. Ираклий взял Дастагерд – главную резиденцию Хосрова – и Ктесифон, персидскую столицу, располагавшуюся в 30 километрах от современного Багдада. Весной Хосров, как нередко бывало с побежденными восточными монархами, был свергнут и убит, а на престол взошел его сын Кавад-Широе, который первым делом стал просить мира у Ираклия. По мирному договору византийцы возвратили себе все, что когда-либо принадлежало Римской империи: Армению, римскую Месопотамию, Сирию, Палестину и Египет. Через несколько месяцев после этого хан Кавад-Широе умер. На смертном одре он просил Ираклия быть попечителем его малолетнего сына. Это было признанием не только победы византийцев, но и опасности, которая может исходить от них в дальнейшем: традиционный баланс сил был нарушен.