После падения Преславы болгары отказались от союза с Русью и стали переходить на сторону императора. Святослав, оставшись без союзников, собрал все свое войско — около 60-ти тыс[43], у стен Доростола. Цимисхий медленно шел на встречу Святославу, захватывая по пути многие города, которые без сопротивления переходили под власть императора. Впереди войска шел передовой отряд Феодора из Мисфии. Он должен был вести разведку, сообщая о приближении вражеских войск, их численности, а «если же будет возможно, то попытать их силу перестрелкой»[44]. Однако недалеко от Доростола передовой отряд попал в засаду, которую устроил сторожевой авангард русов, и был разбит.
23 апреля 971 г. в окрестностях Доростола произошло решающее сражение. Войска Святослава, не имея сильной конницы, стояли стеной, сомкнув щиты и копья. Цимисхий выстроил против них фалангу, расположив одетых в панцири всадников по бокам, а лучников и пращников позади фаланги. Войска сошлись в рукопашную, завязался жестокий бой, который продолжался с переменным успехом до самого вечера. Исход сражения был решен атакой латной конницы греков. Русы не выдержали ее натиска, обратились в бегство и укрылись за стенами Доростола. Одержав победу, Цимисхий не торопился с осадой города. Он ждал прихода греческого флота, чтобы блокировать Дунай и не дать русам уйти из города в ладьях. Армия Цимисхия окопалась на высоте против города. Греки вырыли глубокий ров, насыпали вал и на нем воткнули копья с подвешенными щитами. Святослав же, готовясь выдержать длительную осаду, предусмотрительно приказал заковать всех болгар в городе в колодки и цепи.
С приходом флота ромеи начали осаду Доростола. Оборонявшиеся русы метали в греков стрелы, камни и все, что можно было выпустить из метательных орудий. Греки, защищаясь от «скифов», стреляли снизу из луков и пращей. В один из дней русы решили дать бой за стенами крепости. Когда наступил вечер, все ворота города открылись и русы «в кольчугах и с доходившими до самых ног щитами» напали на греков. Это нападение оказалось для них неожиданным из-за приближения ночи. Обе стороны храбро сражались, попеременно тесня друг друга так, что было неясно кто победит. Но когда был убит доблестный Сфенкел, считавшийся у русов третьим после Святослава воином, их натиск ослаб. Тем не менее, в течение всей ночи и на следующий день до самого полудня они продолжали сопротивляться. Когда же греческая конница попыталась отсечь русов от города и окружить, те вынуждены были отступить. С наступлением ночи Святослав окружил стену города глубоким рвом, чтобы затруднить грекам приближение к городской стене и ослабить, таким образом, действие метательных машин.
Укрепив город, Святослав стал готовиться к дальнейшей осаде. В первую очередь, необходимо было пополнить запасы продовольствия. Подступы к городу были блокированы греками со всех сторон армией и флотом. Тогда, дождавшись глубокой и безлунной ночи, когда лил дождь, а «молнии и гром повергали всех в ужас», Святослав с двумя тысячами воинов сел в ладьи и отправился на поиски продовольствия. Незаметно пройдя через греческие посты, русские ладьи пошли вдоль берега, собирая, где только можно продовольствие. На обратном пути русы заметили на берегу реки ромеев, которые поили и пасли лошадей. Недолго думая, они бесшумно пристали к берегу, вышли из ладей, напали на греков, многих из них перебили, а «прочих принудили рассеяться по соседним зарослям». Усевшись обратно в ладьи, русы «с попутным ветром понеслись к Доростолу». Когда императору доложили об этой вылазке Святослава, его охватил «великий гнев». Он обвинил начальника флота в том, что тот плохо охраняет реку, и пригрозил ему смертью, в случае если нечто подобное повторится еще раз. После этого оба берега реки тщательно охранялись, а все дороги были перекопаны рвами и взяты под охрану.
Осада Доростола продолжалась еще целых 65 дней. Русы страдали от голода и несли большой урон от камнеметных машин, которые установили греки. Тогда они решили предпринять смелую вылазку с целью уничтожения машин. Эти машины охранял родственник императора Иоанн Куркуас, который заметил русов и со своими воинами бросился на защиту орудий. В завязавшейся схватке Куркуас «упал вместе с конем, который был ранен копьем, и погиб, изрубленный на части». Но подоспевшие ромеи оттеснили русов в город и отстояли камнеметные орудия.
20 июля 971 г. Святослав предпринял еще одну попытку прорвать блокаду. Русы «в большом числе» неожиданно вышли из города и напали на греков. Особенно среди русов выделялся Икмор, «храбрый муж гигантского роста», который по достоинству был первым после Святослава. Окруженный отрядом верных ему воинов, он яростно поражал ромеев одного за другим, воодушевляя своим мужеством остальных. В самый разгар боя сын и соправитель эмира острова Крит Анемас на коне пробился к Икмару и убил его ударом меча в шею. Гибель Икмара привела русов в отчаяние. Воодушевленные же подвигом Анемаса греки перешли в решительное наступление. Русы не выдержали натиска, «закинули щиты за спину и начали отступать к городу».
На следующий день Святослав стал держать совет с дружиной, как быть дальше. Одни советовали тайно уйти ночью на ладьях, другие — заключить мир с греками. Но все сходились на том, что следует закончить войну. Выслушав всех, Святослав обратился к дружине со словами: «Нам некуда уже деваться, хотим мы или не хотим — должны сражаться. Так не посрамим земли Русской, но ляжем здесь костьми, ибо мертвым не ведом позор. Если же побежим — позор нам будет. Так не побежим же, но станем крепко, а я пойду впереди вас: если моя голова ляжет, то о себе сами позаботьтесь». Слова Святослава пришлись по душе дружине. В ответ на призыв князя воины ответили: «Где твоя голова ляжет, там и свои головы сложим»[45].
На рассвете 21 июля Святослав вывел все войско, приказав запереть за собой ворота, чтобы никто даже не подумал о возвращении в город. Русы бились с таким ожесточением, что стали теснить греков. Тогда Цимисхий приказал своим войскам медленно отходить на равнину, подальше от города, а Варде Склиру с его войсками зайти в тыл русам. Желая выиграть время, Цимисхий прибегнул к хитрости. Он вызвал Святослава на поединок, предлагая решить дело смертью одного из них. Но Святослав вызова не принял, заявив, что «лучше врага понимает свою пользу, а если император не желает более жить, то есть десятки тысяч других путей к смерти; пусть он и изберет, какой захочет»[46].
Отказавшись от вызова, Святослав с неистовой яростью бросился на греков, воодушевляя свои войска. В этот момент Анемас, который накануне прославился убийством Икмара, вырвался на коне вперед, устремился на Святослава и «ударив его мечом по ключице, поверг вниз головою наземь, но не убил». Святослава спасла кольчуга и щит. Сам же Анемас был окружен и убит. Гибель Анемаса воодушевила русов. Они разбили противостоящих им греков и погнали их перед собой. В этот критический момент греки, по словам Льва Диакона, получили «божественное воспоможение». С юга поднялась сильная буря и ударила русам в лицо. Порядки русских войск расстроились, Цимисхий бросил вперед конницу, а Варда «со множеством воинов» нанес Святославу неожиданный удар в тыл. Русы не выдержали натиска ромеев и отступили за городскую стену. Сам Святослав, израненный стрелами, потеряв много крови, едва не попал в плен.
Убедившись в невозможности вырваться из осажденного города, Святослав стал просить мира. Цимисхий с радостью согласился. По договору русы обязывались не воевать ни против Византии, ни против Болгарии. Русским войскам разрешалось вернуться в Киев на судах. Договор подкреплял прежнюю дружбу двух стран, а русских купцов, которые будут приезжать в Константинополь для торговли, император согласился считать своими друзьями. В августе 971 г. войска Святослава, получив на обратную дорогу от греков съестные припасы, покинули Болгарию[47].