На следующее утро ромеи пошли на штурм. Русские удачно использовали стоявшие на городских стенах и башнях болгарские метательные машины, нанесли противнику большие потери и заставили отступить обратно в лагерь. Рассказ Льва Диакона о дальнейших событиях противоречив. Историк пишет о том, как русские вышли сражаться против ромеев в конном строю, хотя перед этим внушал читателям, что они этого не умеют делать. Скилица просто констатирует сам факт появления русских всадников и ничего не пишет, что воины Святослава не умели сражаться в конном строю: «Вышли они, выстроившись в боевой порядок, и тогда в первый раз появились верхом на лошадях, в предшествующих же сражениях бились пешими» (7, 128). Вряд ли Святослав повел в конную атаку воинов, не умеющих ездить на лошадях, да и сам ход боя в изложении Скилицы об этом не свидетельствует. После продолжительного сражения панцирная кавалерия Империи отбросила русскую конницу обратно в город. В этот же день по Дунаю поднялись огненосные дромоны ромеев и корабли с продовольствием для сухопутной армии. Опасаясь греческого огня, Святослав распорядился вытащить ладьи на сушу. Началась тесная блокада Доростола.
Киевский князь не прятался за городскими укреплениями, он всё время пытался навязать Цимисхию свою тактику ведения войны. Вечером 26 апреля русская рать под командованием воеводы Сфенкела вышла из Доростола и выстроилась на равнине перед городом. Цимисхий вызов принял, покинул лагерь и развернул армию в боевые порядки. Битва свелась к лобовому столкновению и долго шла с переменным успехом, чаша весов клонилась то на одну, то на другую сторону. Переломным моментом стала гибель Сфенкела, сражавшегося в первом ряду и погибшего в рукопашной схватке. После смерти воеводы русские стали медленно отступать к городу. Цимисхий попытался развить успех и бросил в бой катафрактариев, но русские закрылись большими щитами, отбили все атаки и ушли в Доростол. После этого Святослав на некоторое время отказался от полевых сражений. Однажды ночью русские выкопали вокруг города глубокий ров, чем сильно затруднили наступление ромеев на Доростол.
Время шло, в осажденном городе начались проблемы с продовольствием. С суши Доростол был плотно обложен сухопутной армией ромеев, путь по Дунаю перекрывали огненосные дромоны Империи. Но Святослава это не остановило. Князь дождался темной и безлунной ночи, когда бушевала непогода, лил дождь, сыпался град, гремел гром и сверкали молнии, посадил на ладьи 2000 воинов и отправился на вылазку. Незаметно пройдя мимо византийских кораблей, русские высадились на берег и разошлись по окрестностям в поисках продовольствия. Дружинники наполнили ладьи зерном и направились обратно в Доростол. В это время обозники византийской армии пригнали к реке на выпас и водопой лошадей. Разведчики доложили об этом Святославу, князь принял решение атаковать противника. Дружинники покинули ладьи, прошли через лес и внезапно напали на вражеских обозников. Множество ромеев было перебито, в том числе и те, кто отправился в лес за дровами. После этого русские погрузились на ладьи и быстро добрались до Доростола. Узнав об этой вылазке, Цимисхий страшно разгневался на начальника флота и пригрозил ему смертью, если подобное повторится. Охрана реки была усилена, все окрестные дороги перекопали рвами и перекрыли усиленными дозорами. По свидетельству Скилицы, произошло это на шестьдесят пятый день осады, когда Цимисхий отказался от атак на город и решил уморить вражеское войско голодом (7, 129).