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