Этот исход, видимо, убедил Иоанна Цимисхия в том, что ни дипломатия, ни другие подобные средства тут не помогут, и он начал готовиться к полномасштабной войне, как против Симеона в 917-м. Всю зиму 970–971 годов он делал запасы оружия и продовольствия в Адрианополе и готовил флот, который мог бы поддерживать армию в Черном море и на Дунае. В апреле он собрал 5000 лучших воинов и перешел с ними Балканские горы, в то время как основная часть армии под командованием Василия Лакапина последовала за ними. Передовой отряд двигался так быстро, что русы были захвачены врасплох, и о походе императора они узнали, только когда он был уже почти у стен Преслава. Около 8000 русских находились за городскими стенами, участвуя в учениях, и, когда подошла византийская армия, они бесславно бежали за укрепления. Вскоре после этого прибыла основная часть византийской армии и начался штурм Преслава. Тринадцатого апреля византийцы ворвались в город, но многие русы не захотели смириться с поражением и забаррикадировались внутри укрепленного дворца царя Симеона. Император Иоанн решил, что самым простым решением будет выкурить их оттуда. Византийцы выпустили горящие стрелы, те влетели в окна, и по всему зданию вспыхнули пожары. Некоторые русы выбежали, остальные погибли в огне. Но пожары опустошили великолепную столицу Симеона, уничтожив Золотую церковь и прекрасные здания, которые, как он надеялся, могли соперничать красотой с константинопольскими. Пасху Цимисхий встречал среди руин.
Когда город пал, Святослава в Преславе не было, и теперь он шел туда с основными силами, надеясь отбить болгарскую столицу. Серия военных столкновений произошла у города Доростола, и византийцы в конечном счете вышли победителями. К тому времени погибли уже тысячи русов, и Святослав вынужден был признать, что ему надо выпутываться из болгарской кампании. Он отправил к императору Иоанну посланника с сообщением, что готов отказаться от Доростола и покинуть Болгарию. Стремясь завершить дело, Иоанн принял условия. Эта возможность была также использована, чтобы возобновить старый торговый договор, позволявший русам привозить свои товары в Константинополь. А затем русы пустились в долгий обратный путь. Но большинство их так и не достигли Киева: они попали в засаду, устроенную на Днепре печенегами. Среди убитых оказался и князь Святослав.
Одержав безоговорочную победу и захватив всю Болгарию, Иоанн должен был решить, что с нею делать. В ходе кампании он выступал с публичными заявлениями, согласно которым конфликт у него был с русами и он пришел избавить от них болгар. Когда Преслав пал, византийцы освободили Бориса II и его семью. Император отнесся к ним благосклонно и отпустил также всех других болгар, взятых в плен в ходе кампании. Вскоре, однако, стало ясно, что он не собирается возвращать Болгарию ее бывшим правителям. Земли между Балканскими горами и Дунаем были в прошлом византийскими и должны были стать таковыми снова. Было объявлено, что Преслав отныне будет известен как Иоаннополис, «город Иоанна», в честь императора, и там будет править византийский наместник. Несчастный Борис должен был сопровождать императора в Константинополь и принять участие в триумфальном шествии от Золотых ворот к собору Святой Софии. Там он был публично лишен царской короны и регалий, которые затем поместили на алтарь Святой Софии. Бывший царь остался жить в Константинополе и получил титул, позволявший ему принимать участие в церемониях и процессиях.
Иоанн же почти сразу переключил внимание на сирийскую границу, где события быстро развивались. В 969 году Фатимиды, правившие в Северной Африке, двинулись восточнее и захватили Египет, лишив Аббасидов одной из богатейших их территорий и основав собственный шиитский халифат в противовес Багдадскому. Позже в том же году их армии двинулись в Сирию и Палестину, грозя вплотную подойти к границам Византии. Полувеком ранее византийский император и его советники могли бы увидеть в такой ситуации безграничные возможности для того, чтобы добиться уступок, противопоставляя Аббасидов Фатимидам. Но Иоанн Цимисхий использовал ее, чтобы выступить в поход. Его дерзкий рейд начался весной 975 года. Зайдя глубоко на территорию Сирии, византийская армия сжигала и грабила города на своем пути. Так, Гелиополь был захвачен и разграблен после нескольких дней осады. Но Иоанн был готов и просто принимать дань от горожан. Вскоре он подошел к Дамаску, где уже много веков не видели византийскую армию, но не имели ни малейшего желания разделить судьбу Гелиополя. Жители города вышли встречать императора с дарами в виде денег, лошадей и мулов. В обмен на признание владычества Византии и выплату ежегодной дани Дамаск уцелел, а император двинулся дальше. Получив дань с Бейрута, Триполи и других городов, он устремился на юг, в Палестину, и за сентябрь дошел до города Кесария.