Войска греков из Адрианополя пришлось отозвать в Малую Азию и направить против восставшего Варды Фоки, брата убитого Никифора. Положение Цимисхия стало крайне затруднительным, и надо было предпринять решительные действия для обуздания завоевательских нападок русов. Но для этого требовались значительные приготовления, окончить которые нельзя было ранее весны следующего года; да к тому же в наступившее зимнее время переход через Гемский хребет (Балканы) считался невозможным. Ввиду этого Цимисхий снова завел переговоры со Святославом, послал ему дорогие подарки, обещая прислать дары и весной, и, по всем вероятиям, дело закончилось заключением предварительного договора о мире. Этим и объясняется, что Святослав не занял горные проходы (клиссуры) через Балканы.
Весной 971 г. Цимисхий, пользуясь распыленностью войска Святослава по всей Болгарии и его уверенностью в мире, неожиданно выслал из Суды флот из 300 судов с приказанием войти в Дунай, а сам с войсками двинулся к Адрианополю. Здесь император был обрадован известием, что горные проходы не заняты русами, вследствие чего Цимисхий с 2 тысячами конных латников во главе, имея сзади 15 тысяч пехоты и 13 тысяч конницы, а всего 30 тысяч, беспрепятственно прошел страшные клиссуры и 12 апреля совершенно неожиданно для русов подошел к Преславе, занятой воеводой Святослава Сфенкелом. На другой день Цимисхий, построив густые фаланги, двинулся к городу, перед которым его ожидали на открытом месте русы. Завязался упорный бой, но русы, не имея конницы, не могли устоять против греческих всадников, и, когда те охватили их левое крыло, они вынуждены были отступить в город.
14 апреля прибыли к Цимисхию остальные войска с камнеметными и стенобитными машинами. Торопясь взять Преславу до прибытия на выручку Святослава, греки, без труда разбив деревянные стены, пошли на приступ и после отчаянного боя овладели городом. Сфенкел отступил за стены царского дворца, откуда продолжал обороняться, пока Цимисхий не приказал зажечь дворец. Выгнанные пламенем из дворца, русы отчаянно отбивались и почти все были истреблены, только самому Сфенкелу с несколькими воинами удалось пробиться к Святославу в Доростол.
В Преславе греками был взят в плен болгарский царь Борис, которого Цимисхий отпустил на свободу, даже заключив с ним союз.
В это время усилия Святослава стянуть войска к Доростолу не могли увенчаться успехом, если принять во внимание, с одной стороны, неожиданность для него развязывания войны, а с другой — быстроту действий Цимисхия: уже через 10 дней Святослав был настигнут греками под Доростолом. Этим и объясняется, почему Святослав, всегда первым нападавший на врага, даже не выступил навстречу Цимисхию. Это было теперь даже благоразумно, так как с наличными силами и без конницы он легко мог быть окружен и отрезан от Доростола превосходной многочисленной греческой конницей. Между тем в Доростоле находились все его ладьи, а Дунай был для него единственным путем отступления.
23 апреля произошел передовой бой у Доростола, а 24-го Цимисхий был атакован за стенами города.
25 апреля Цимисхий попытался, но неудачно, овладеть городом приступом. Вечером же русы снова предприняли масштабную вылазку, причем, по летописным источникам византийцев, они в первый раз попробовали действовать в конном строю, но, имея дурных коней, набранных в крепости и не привыкших к бою, были опрокинуты греческой конницей. В тот же день подошел греческий флот и расположился на Дунае против города, вследствие чего русы были окончательно обложены и не смели более выходить на своих ладьях, боясь греческого огня. Для безопасности Святослав приказал вытащить лодки из воды и поставить их на берегу.
26-го числа русы опять сделали вылазку, но уже всеми силами. С длинными, в человеческий рост, щитами, покрытые кольчугой и броней, русы, выйдя в сумерки из крепости и соблюдая полную тишину, подошли к стану противника и неожиданно напали на греков. Бой длился с переменным успехом до полудня следующего дня, но после того, как был убит Сфенкел, доблестный защитник Преславы, русы отступили.
В ночь с 27 на 28 апреля Святослав, ожидая в свою очередь нападения, приказал вырыть глубокий ров вокруг городских стен и решил обороняться до последнего. Цимисхий сначала ограничился лишь осадой, надеясь голодом заставить Святослава сдаться, но в скором времени русами, предпринимавшими постоянные вылазки, все дороги и тропинки были перекопаны рвами и заняты, а на Дунае флот усилил свою бдительность. Вся греческая конница была выслана для наблюдения за дорогами, ведущими с запада и с востока в крепость.
Положение осажденных стало весьма затруднительным. К 28 июня прошло уже 65 дней осады, сопровождавшейся почти ежедневными боями. В городе находилось множество раненых и наступал жестокий голод. Между тем стенобитные машины греков продолжали разрушать стены города, а камнеметные орудия причиняли большие людские потери.
С 29 июня последовал трехнедельный перерыв в военных действиях.