Но только немедленное нападение на персов в Малой Азии сразу оказалось невозможным. Неожиданно возникшая опасность дома вынудила Ираклия отложить свой крестовый поход. Авары разоряли Фракию и уже почти дошли до ворот Константинополя. Было необходимо любой ценой избавить город от опасности нападения с тыла, прежде чем армия отправится в Азию. Император предложил кагану некоторую сумму за то, что он уведет своих людей за Дунай. Каган согласился встретиться в Гераклее, в сорока милях к западу от Константинополя. До этого места как раз дошли его войска. Ираклий, согласно договоренности, отправился туда вместе со всем своим двором. Но бессовестные авары задумали предательство. Они спрятали всадников в холмах, чтобы перехватить Ираклия по пути к месту встречи, схватить его и потребовать большой выкуп. Императора предупредили вовремя, и он не попал в ловушку, хотя и ускользнул в самый последний момент. Ему пришлось сбросить императорский пурпур, снять корону и скакать во весь опор в Константинополь. Авары преследовали византийцев по пятам. Многие придворные и тысячи фракийских крестьян, которые оказались вблизи, попали в руки врага. Ираклий едва успел въехать в город и закрыть ворота, как к ним приблизились авары.
Несмотря на столь отвратительное предательство, император все еще желал заключить мир с аварами, поскольку это было совершенно необходимо сделать до начала войны с персами. В 620 году мир был заключен в обмен на выплату крупной денежной суммы, но даже после этого Ираклий не смог начать выполнять свой план решительного отпора персам. Сначала пришлось отразить не слишком уверенную атаку персов на Константинополь и расстроить их попытку постройки флота в Халкидоне, чтобы переплыть пролив.
Только в 622 году император смог перейти в наступление. Завершив все приготовления, выдержав Великий пост и получив благословение церкви для себя и армии, он отплыл в Азию в день Святой Пасхи. Он оставил вместо себя своего юного сына Ираклия Константина под присмотром патриарха Сергия и патриция по имени Бон — командира гарнизона Константинополя.
В последовавших шести кампаниях Ираклий продемонстрировал энергию и способности, которые, учитывая его десятилетнее бездействие, от него никто не ожидал. Историки даже не знали, чему удивляться больше — его стратегическим талантам или личной храбрости. С самого начала он показывал превосходство над врагом, наступая и направляя ход войны туда, куда ему было выгодно. Отплыв из Константинополя, он не напал на персов в лоб, а обогнул южные мысы Малой Азии и высадил свою армию в Киликии, в заливе Исс. С этих позиций он мог угрожать и Малой Азии, и северной Сирии. Проследовав в Каппадокию, он перерезал коммуникации между персидской армией в Малой Азии и долиной Евфрата. Это действо привело к именно тому результату, который ожидал Ираклий. Поспешно оставив Вифинию и Галатию, персидский генерал Шахрвараз отошел на восток, чтобы восстановить связь со своей страной. Так, не нанеся ни одного удара, Ираклий очистил запад Малой Азии от врага. Он завершил кампанию, нанеся в 622 году сокрушительное поражение Шахрваразу в Каппадокии и тем самым вернув также восточную часть Малой Азии.
Тщетно предложив Хосрову мир, Ираклий в следующем году принял эффективные меры, чтобы образумить персов. Сирия, Египет и Месопотамия все еще были в руках врагов. Ираклий решил освободить их так же, как спас Малую Азию, нанеся такой сильный удар по операционной базе врага, что он будет вынужден собрать все удаленные силы, чтобы защитить саму Персию. В 623 году Ираклий, оторвавшись от моря, повел свои войска вглубь территории и напал на Мидию. На два года он пропал из вида на востоке, покоряя земли, где раньше никогда не было римских армий, да и европейцев после Александра Великого там тоже не видели. Известно, что он выиграл три генеральных сражения и взял штурмом два крупных мидийских города, Гандзак и Тебармес (Thebarmes), — в последнем якобы родился Заратустра, персидский пророк. Армия получила некоторое удовлетворение, разрушая великолепные храмы, — это была месть за разграбление Иерусалима. Чтобы защитить Мидию, Хосрову пришлось стянуть армии с запада, что отвечало целям Ираклия. Однако византийский император был еще слишком слаб, чтобы нападать на саму Персию или осаждать столицу Хосрова Ктесифон.
Перезимовав возле Вана, Ираклий в 625 году повел свои войска на юг и снова оказался в районах, находившихся в поле зрения западных историков. Он вернул давно утраченные крепости Амида и Мартирополь, древний оплот империи в верховье Тигра, которые в течение двадцати лет оставались в руках персов. Там он восстановил связь с Константинополем, где почти ничего не слышали об императоре во время двух его последних кампаний. Год завершился четвертым сокрушительным разгромом Шахрвараза, который сделал попытку вклиниться между императором и его обратным путем домой, защищая переправу через Сарус, недалеко от Цезарии Германикеи (Мараш).