В 970 г. а союзе с венграми, печенегами и болгарами Святослав вторгся в пределы Византийской империи во Фракии. Союзное войско дошло до Аркадиополя (120 км от Константинополя), где произошло генеральное сражение. Итоги его сторонами интерпретируются по-разному. Русские летописи утверждают, что Святослав разгромил греков, дошел до стен Царьграда, отступив только после получения большой дани. Византийцы не отрицают этого, но утверждают, что в ходе битвы большая часть войска Святослава была уничтожена. Так или иначе, но летом 970 г. активные боевые действия сторон были прекращены.

Пользуясь мирной передышкой, византийцы собрали новую армию, которая, во главе с самим императором, высадилась на 300 судах в устье Дуная и осадила крепость Преслав. Святослав вынужден был уйти из Переяславца и закрепиться в крепости Доростол. Туда же подошла часть русской дружины, сумевшая прорваться из окружения под Преславом. Вскоре под Доростолом появились войска Цимисхия. Началась двухмесячная осада крепости, которая, впрочем, не увенчалась успехом. Обе стороны несли ощутимые потери. У византийцев был убит военачальник Иоанн Куркуас, а у руссов погибли воеводы Икмор и Сфенкл. В одной из стычек сам Святослав был ранен. После этого он решил вступить в переговоры. По словам историка Льва Дьякона, условия мирного договора предполагали, что Святослав уйдет из Болгарии. Греческая сторона обязалась снабдить его воинов запасом хлеба на два месяца. Святослав также вступал в военный союз с Византией, восстанавливались торговые отношения. На этих условиях Святослав покинул Болгарию, сильно ослабленный войнами на ее территории. С другой стороны, болгарский царь Борис II сложил с себя знаки царской власти, получив от Византии почетный сан магистра. Вся восточная Болгария была присоединена к империи. Независимость сохранили только западные области.

Осенью 971 г. Святослав с дружиной добрался до устья Днепра. Опасаясь нападения со стороны печенегов и учитывая скорый ледостав, он вынужден был зимовать на побережье Черного моря. Зимовка оказалась крайне тяжелой. Стояли лютые морозы, дружина испытывала недостаток в провианте. С большим трудом дождавшись освобождения Днепра ото льда, армия руссов продолжила путь домой. Однако недалеко от острова Хортица она подверглась нападению печенегов, в ходе которого сам Святослав погиб. Известно, что последними словами легендарного русского князя была фраза, ставшая впоследствии крылатой: «Ляжем зде костьми. Мертвые бо сраму не имут!»

По мнению некоторых исследователей, именно византийская дипломатия убедила печенегов атаковать Святослава. На основании этого подчеркивается, что использование печенегов для устранения враждебного князя произошло в соответствии с византийскими внешнеполитическими установками того времени. Хотя, например, «Повесть Временных лет» указывает в качестве вдохновителей этой засады не византийцев, а болгар. Согласно легенде, печенеги после битвы отыскали труп Святослава, обезглавили его и сделали из него кубок. Из него печенежские вожди пили вино на торжественных пирах.

Лишь небольшой части дружины Святослава во главе с воеводой Свенельдом удалось отбиться от печенегов и добраться до Киева. Сообщив сыну Ярослава Ярополку, княжившему в Киеве, печальную весть, Свенельд сделался его ближайшим сотрудником и доверенным лицом. Пользуясь этим, воевода затеял интригу, приведшую, в конце концов, к первому серьезному междоусобию в княжеской семье. Еще в бытность Святослава Великим князем, как-то на охоте случайной стрелой, пущенной Олегом (средним сыном Святослава) был убит сын Свенельда. Воевода затаил злобу, но отомстить княжичу при жизни Киевского князя было невозможно. После его смерти Свенельд решил свести счеты. Он сумел рассорить Ярополка с Олегом и тот в 977 г. совершил поход в древлянскую землю, где княжил Олег. Он был убит, а город Искоростень – столица древлян – был повторно сожжен.