В первую очередь, проанализировав прошлые ошибки, василевс организовал опорные базы для своей армии в Филиппополе, Солуни и Мосинополе и начал подготовку к новой войне. Но его опередил Самуил, в 996 г. предпринявший очередной поход в Элладу. Вначале все развивалось очень даже успешно для болгар: они победили в битве при Солуни византийского полководца армянского происхождения Григория Таронита, причем его сын Ашот попал в плен. Но внезапно военное счастье изменило Самуилу. Началось с того, что его дочь влюбилась в Ашота и настояла на том, чтобы отец выдал ее за него замуж. Делать нечего — Болгарский царь удовлетворил желание дочери и после свадьбы назначил Ашота правителем города Драч. Но едва к стенам Драча подошел византийский флот, как Ашот сдал город, сумев привлечь для нейтрализации болгарского гарнизона местное греческое население. Интересно, что жена-болгарка помогала ему в этом.
Рок продолжал преследовать Самуила. Он прошел через всю Элладу и дошел даже до Пелопоннеса. Однако его по пятам преследовала другая византийская армия, во главе с полководцем Никифором Вестом. На берегу сильно разлившейся вследствие дождей реки Сперхия оба войска расположились лагерем друг напротив друга. Ночью, когда болгары спали, византийцы перешли вброд реку и напали на их лагерь — битва закончилась совершеннейшим уничтожением болгарского войска. Сам Самуил едва спасся, бежав на остров Преспы. После Сперхейского сражения инициатива полностью перешла к грекам. В течение 999 и 1000 гг. римские полководцы, среди которых заметно выделялся Никифор Ксифин, победоносно захватывали земли Мезии и близ Софии. Затем под ударами римского меча пали Большой и Малый Преслав. Но кардинальные успехи начались в 1001 г., после прибытия Василия II на болгарский фронт. Император вторгся в область Сердики и захватил города Вервею, Сервею, тем самым отрезав Самуила от старых болгарских земель на Дунае. Затем василевс вторгся в Македонию и захватил Воден и другие крепости Фессалии[651]
. А в 1002 г., после длительной осады, царь смог принудить к сдаче город Бдин. Единственным ответным успехом Самуила стало внезапное нападение на Адрианополь, которое, однако, не привело к захвату города[652].Из Бдина царь Василий II, разрушая по пути болгарские крепости, двинулся по Моравской долине к Скопии, где в 1004 г. вновь разгромил Самуила, после чего город Скопия открыл ему ворота.
Самуилу к этому времени уже начали изменять самые близкие люди: например, князь Роман, внук великого царя Симеона, сдал находившийся под его защитой город византийцам и получил взамен титул патрикия. После 4–5 лет войны от недавнего Болгарского царства остались только Западная Македония, Албания и горные земли возле Софии. Но тут неожиданно Самуил получил передышку, поскольку император был вынужден отвлечься на войну в Грузии и Армении. Правда, ничего
Болгарин пребывал в иллюзиях до тех пор, пока вновь не появился император Василий II. Римскому царю только в 1014 г. удалось вновь сосредоточиться на войне с болгарами, которые, используя длительную передышку, несколько восстановили свои силы и даже вернули себе города Драч и Воден. Естественно, византийцы сразу же приступили к активным наступательным действиям, хотя первоначально и не очень удачным. Хотя римский полководец Феофилакт Вотаниат разбил у города Солуни болгарское войско под командованием Несторицы, сам император безуспешно пытался пробиться через засеки в ущельях Клидиона близ Струмицы. Однако правильная стратегия и умение войска оказали решающее значение на исход этой кампании. 29 июля 1014 г. на помощь Василию II подоспел стратиг Филиппополя Никифор Ксифий и, обойдя болгар с тыла, напал на них. Это сражение, названное впоследствии