Первый из этих походов, осуществленный в 1001 г., был направлен против Софии. Сделав Филиппополь своей отправной точкой, император оставил там сильный гарнизон под командованием патрикия Феодорокана и прошел через Ворота Траяна, захватив много крепостей в окрестностях Софии, хотя на сам город он не нападал, перед тем как отойти в Мосинополь, современный Гумулджина, в Юго-Западной Фракии, на зиму. Задача этого похода состояла в том, чтобы отрезать Самуила от восточных провинций его государства. Поэтому в следующем году Василий отправил большую армию под командованием Феодорокана и протоспафария Никифора Ксифия на завоевание земель между Нижним Дунаем и Черным морем, старым центром Болгарии. Сам он, вероятно, ожидал врага вблизи от Софии, чтобы воспрепятствовать любой помощи, которую мог послать городу Самуил. Маневр оказался успешным, а прежние столицы Болгарии, Малый Преслав, Плиска и Великий Преслав, вновь оказались в руках императора[516]
.В 1003 г. Василий нанес удар по Македонии. Когда многочисленная армия императора приблизилась к Веррии, Добромир, болгарский наместник, испугался и сдался без боя. Василий всегда пытался привязать бывших болгарских военачальников к империи, раздавая им титулы, а иногда и посты в провинциях, достаточно удаленных, чтобы они могли причинить ему какой-нибудь вред. Добромир был почтен достоинством антипата и послан в Константинополь. После Веррии император напал на Сервию. Город защищал Никулина, предатель, которого Самуил пощадил в Лариссе. Никулина отважно сопротивлялся, но город был все же захвачен. Василий обошелся с его защитниками мягко, несмотря на прошлое Никулины, который стал патрикием и сопровождал императора на обратном пути в Константинополь летом 1003 г., когда после своих недавних успехов Василий счел целесообразным нанести краткий визит в столицу.
Однако жестокий предатель не смог приобрести себе титул и через несколько дней бежал к Самуилу. Самуил в это время, согласно общепринятой болгарской тактике, укрывался в горах во время вторжения императора, решительно избегая генерального сражения. После отъезда Василия он вместе со своей армией сошел с гор и при помощи Никулины попытался возвратить Сервию. Но Василий был проинформирован о маневре болгар и стремительно продвигался к ним навстречу. Форсированным маршем он достиг границы Фессалии; Самуил и Никулица бежали. Вскоре последний был схвачен в засаде и направлен в заключение в Константинополь. Несколькими годами позже он бежал еще раз. Император провел следующий месяц или два в Фессалии, восстанавливая крепости, которые болгары разрушили, и возвращая те, которые они все еще удерживали. Солдаты из числа пленных болгарских гарнизонов были посланы колонизировать район Волера, где река Марица впадает в Эгейское море. Из Фессалии Василий обратился на север, к большой крепости Воден, находившейся на краю высокого Македонского плато, там, где река Остров через великие каскады стекает в нижнюю долину. Болгарин по имени Драксан отважно оборонял ее, но в конце концов был вынужден сдаться, вероятно, в конце осени. Его воины были отправлены, чтобы пополнить колонию в Волере, но сам Драксан получил разрешение проживать в Фессалониках. Там он женился на дочери одного из главных священников, который заботился о гробнице святого Димитрия. Последующая судьба болгарского военачальника представляется несколько странной. После того как его супруга родила двоих детей, он внезапно бежал к болгарскому двору, но вскоре возвратился и был прощен благодаря ходатайству своего тестя. Но несколько позже он вновь бежал, однако с тем же результатом. После этого Драксан оставался в Фессалониках, пока у него не родились еще двое детей, после чего он бежал еще раз. На сей раз терпение императора истощилось, и когда болгарин был схвачен, его вскоре посадили на кол.