Весной 971 г. Цимисхий отправил флот к устью Дуная, а сам прибыл в город Адрианополь, где собрал военный совет. По мнению императора, ключом к победе в войне был быстрый захват города Великий Преслав, столицы Болгарского царства. В городе находился сильный русский гарнизон под командованием воеводы Сфенкела, при котором в качестве советника состоял перешедший на сторону Святослава патрикий Калокир.
Штурм Великого Преслава. Миниатюра из «Истории» Иоанна Скилицы
Главная проблема Цимисхия заключалась в том, как перевести армию через горы Гем, больше всего базилевс опасался, что русские атакуют его войска во время перехода по узким ущельям (клисурам). Цимисхию было известно, что если эти горные проходы перекрыть, то порваться в Болгарию будет практически невозможно. Он не поверил, когда разведка донесла, что ущелья не охраняются вражескими отрядами, однако информация подтвердилась и император в начале апреля повел армию в Болгарию. Как пишет Лев Диакон, Цимисхий возглавил передовой отряд из 13 000 конницы и 15 000 тяжеловооруженных пехотинцев, остальная армия, метательные машины и обоз двигались следом, под командованием проедра Василия (7, 70). Иоанн Скилица приводит другие данные, по его информации передовой отряд состоял из 4000 всадников и 5000 легковооружённых воинов (7, 124). Ромеи беспрепятственно перешли через горы, вечером 11 апреля вышли на равнину и разбили лагерь на неприступном холме. Великий Преслав находился совсем рядом, но о том, что враг у ворот, в городе узнали только утром. Это свидетельствует о том, что Сфенкел и Калокир совершенно не уделяли внимания разведке и даже не озаботились выставить дозоры в клисурах.
Святослава застали врасплох, князь оказался совершенно не готов к войне, его войска были разбросаны по всей Восточной Болгарии. Мы не знаем, почему так произошло, но всё случившееся характеризует киевского князя не с самой лучшей стороны. Может быть, Святослава усыпила бездеятельность Иоанна Куркуаса или же князь надеялся, что Цимисхий не сможет так быстро подготовиться к войне. Можно предположить, что за оборону клисур отвечали Сфенкел и Калокир, иначе ничем другим не объяснишь, зачем в Преславе было сосредоточено 10 000 русских воинов. И если это так, то Сфенкел и Калокир проявили преступную халатность. Патрикий не мог не знать о стратегическом значении клисур и должен был любой ценой заставить воеводу перекрыть проходы в горах. В любом случае, главным виновником прорыва ромеев через горы является киевский князь, который как командующий несет полную ответственность за действия подчиненных. Беспечность Святослава обернулась катастрофой.