Битва вышла жестокая, и долгое время было непонятно, на чьей стороне перевес. В конце концов Иоанн ввел в бой полк «Бессмертных», которых он лично воспитал и обучил; они бросились в смертоносную атаку с фланга, строй русов внезапно рассыпался, и они кинулись бежать к Преславу, а по пятам за ними неслась византийская кавалерия. Мало кто добрался до города живым. На следующий день началась осада Преслава; катапульты византийцев метали через стены города пылающие снаряды с греческим огнем. Вскоре город был взят. Среди тех, кто сдался завоевателям, был и свергнутый рыжебородый царь Борис, которого Святослав два года держал в плену. Император принял его любезно и сказал ему, что считает своей миссией не завоевание Болгарии, а ее освобождение – заявление, которое, в свете его последних действий, лучше было не делать.
Пасху отпраздновали среди руин, а Иоанн тем временем размышлял о проблеме, которую представлял собой Святослав. Он узнал, что князь находится в Доростоле (Дристре, Силистре) – главном портовом городе Болгарии на Дунае. Иоанн немедленно отправился туда. Переход был долгим и тяжелым, но на День святого Георгия он наконец выстроил свое войско перед Доростолом. На этот раз осада продолжалась три месяца, по истечении которых Святослав внезапно выступил с остатками своей армии через главные ворота. Одержать победу в конечном итоге помог любимый прием Иоанна – притворное отступление; с наступлением ночи князь запросил мира, предложив освободить всю страну и вернуть всех пленников. Взамен он просил лишь дать ему возможность безопасно переправиться через Дунай и дать немного пропитания для оставшихся в живых людей. Император был только рад согласиться на такие условия.
По просьбе Святослава два правителя наконец встретились лицом к лицу. К назначенному месту на берегу реки Иоанн приехал на своем боевом коне, князь же приплыл на лодке; он греб наравне со своими людьми, и его можно было отличить от них лишь по чистой белой рубахе, серьге с драгоценными камнями и двум длинным прядям русых волос на обритой голове – они оставались знаком его положения и свидетельствовали о его происхождении от викингов. Он коротко выразил надежду, что прежний торговый договор может быть возобновлен, а затем с достоинством поклонился, вернулся в лодку и уплыл.
Что до Иоанна Цимисхия, то он вернул Болгарию империи – что бы он ни говорил Борису в Преславе, он не собирался восстанавливать его на троне. Любого свидетеля его триумфального въезда в Константинополь можно было простить за предположение, что победа была одержана именно над болгарами. Почетное место в процессии – золоченую колесницу, в которую были впряжены четыре белых коня и которую должен был занимать он сам, – Иоанн отдал самой почитаемой в Болгарии иконе, портрету Богородицы, привезенной среди прочих трофеев. Сам он ехал позади в сверкающих доспехах, а в самом хвосте процессии пешком шел царь Борис, его жена и дети. В храме Святой Софии Иоанн возложил на алтарь не только икону, но и корону Болгарского царства. Вскоре он вынудил молодого царя официально отречься от престола, и Болгария стала византийской провинцией. Болгарский патриархат упразднили, а подчинявшиеся ему епархии снова вернули под власть Константинополя. Что характерно, Иоанн даровал Борису титул магистра, а его менее удачливого младшего брата Романа кастрировали. Это был бесславный конец династии Крума, которая неоднократно приводила в трепет саму Византию.
Иоанн Цимисхий теперь обратил внимание на Восток. Всего тремя годами ранее, в 969 году, Фатимидский халифат начал новую экспансию. Наступая на восток из своей столицы – города Махдия, находившегося на территории нынешнего Туниса, войска Фатимидов прошли через всю долину Нила, а затем через Синай в Палестину и Сирию. В 971 году они напали на Антиохию, а в июле 973 года почти уничтожили византийское войско у стен Амиды. К весне 974 года Иоанн был готов. Его армию пополнили около 10 000 предоставленных царем Ашотом армян, и он повел ее на юг, к равнинам Месопотамии, нигде не встречая сопротивления, о котором стоило бы упомянуть. Остается загадкой, почему он не пошел дальше, на Багдад: находившийся в упадке город вряд ли смог бы противостоять серьезной атаке. Вместо этого он повернул в Антиохию, оставил армию на зимних квартирах, а сам спешно вернулся в Константинополь, чтобы встретиться с папой римским.