Русские были поражены внезапным появлением неприятеля у стен Преславы, но немедленно же, выйдя из города и построившись в несколько рядов, «в сильный боевой порядок», надев на рамена свои длинные щиты и обнажив мечи, с грозным боевым кличем обрушились на греков. Несмотря на явное превосходство греков и в числе, и в вооружении, «битва с обеих сторон была равная». Только удар по левому крылу русских, нанесенный конницей «бессмертных», заставил русское пешее войско отойти и укрыться за стенами города. Попытка пойти на штурм не увенчалась успехом для греческих воинов. Осыпанные дождем стрел, они вынуждены были отойти.
Настала ночь. Наутро к Цимисхию подошел Василий. Заработали осадные машины. Огромные камни, со свистом проносясь в воздухе, разрушали стены Преславы, убивали и калечили русских воинов, стоявших на стенах. Жужжали и завывали камни, бросаемые греческими пращниками, роем носились стрелы и копья. Греки засыпали стены Преславы камнями и стрелами, пытаясь таким образом воспрепятствовать русским оборонять город и ослабить эффективность их стрельбы. Но русские, «побуждаемые… Сфенкелем, построились на стенах и безбоязненно всеми силами начали защищаться, бросая копья, стрелы и камни». Вскоре греки пошли на штурм. К стенам были приставлены лестницы, и воины Цимисхия, держа левой рукой над головой щит, а правой — обнаженный меч, начали подниматься со ступеньки на ступеньку все выше и выше. Видя, что сдержать напор многочисленных неприятелей, несмотря на отчаянное сопротивление, не удается, русские, отбиваясь от наседавших греков, сошли со стен и укрылись за оградой царского дворца, находившегося в центре города. Между тем греки сломали крюки и сбили запоры с ворот, ворвались в город и принялись истреблять тех русских воинов, которые не успели укрыться во дворце. Захваченный в плен вместе с семьей Борис был приведен к императору и торжественно объявлен им царем болгар, причем Цимисхий подчеркнул, что он ведет войну со Святославом за освобождение Болгарии.
Вступив в город, греки немедленно же попытались штурмом овладеть царским дворцом, где укрылось до 7.000 русских воинов под командованием Сфенкеля. У открытых ворот во дворец опьяненных победой греков встретили русские, и здесь, на узком пространстве, закипела кровавая сеча. Оставив у ворот сто пятьдесят трупов своих воинов, греки отошли. Видя, что с русскими храбрецами ничего поделать невозможно, греки подожгли дворец. Огонь охватил все строения дворца.
И вот из горящего дворца вышло грозное русское войско; на утомленных боем русских немедленно же обрушились войска Варды Склира. Предстояла трудная задача — пробиться сквозь кольцо осаждающих. В неравной битве пало немало отважных русских воинов. «Они сильно сражались и не обращались в бегство», — говорит Лев Диакон. Остатки своего отряда храбрецов, разорвав вражеское кольцо, Сфенкель увел в Доростол к Святославу.