7 июня 1708 года Карл XII открыл поход сосредоточением своей армии в районе Минска. Затем он переправился через Березину и двинулся к Днепру, отдав распоряжение лифляндскому корпусу Левенгаупта идти к нему на соединение в район Могилева, а финляндскому Либекера – двинуться на Новгород и Псков, срыв по дороге ненавистный Санкт-Петербург.
Стремясь не допустить шведов к Днепру, русские генералы сосредоточили до 30 тыс. под Головчиным, но в происшедшем здесь 3 июля сражении потерпели совершенную неудачу и отступили на Оршу и Мстиславль с целью преградить неприятелю дорогу на Москву. Головчинская позиция была выбрана так неудачно, что артиллерия за дальностью расстояния не могла помочь пехоте. Бой происходил в густых зарослях, стеснявших маневрирование и делавших невозможным управление войсками, пришедшими после боя в совершенное расстройство, несмотря на незначительные сравнительно потери.
Бой мог бы иметь для нас очень скверные последствия, но шведы не преследовали по тем же причинам. Наши потери – около 1100 убитыми и ранеными, 600 пленными, до 12 орудий, шведов (бывших в слегка превосходных силах) – около 1500 убитыми и ранеными. Петр был очень раздосадован опрометчивостью генералов, давших этот бой и рисковавших разгромом армии. Репнин разжалован в рядовые и ему приказано возместить из личных средств стоимость потерянных пушек и обозов. Царь остался также недоволен и войсками: «Многие полки в том деле в конфузию пришли, не исправили должности, покинули пушки, непорядочно отступили, иные и не бившись, а которые и бились, то не солдатским и казацким боем…» Но Карл XII вместо того чтобы настойчиво преследовать противника, повернул к Могилеву, овладел им и оставался там весь июль, давая отдых войскам и тщетно поджидая Левенгаупта. Оттуда он выступил в первых числах августа к Чирикову, но затем, неожиданно для русских, шведская армия вдруг повернула на север, заняла Старицу и снова здесь остановилась. Карл все ждал Левенгаупта. Наконец, отчаявшись в его скором прибытии, не имея от него вестей и полагая его еще далеко в Лифляндии, король в половине сентября повернул на Украину и пошел к Стародубу.
А Левенгаупт тем временем подходил уже к Днепру. Потерпи Карл еще немного и прибавь к двум месяцам бесплодного ожидания еще неделю – и обе шведские армии соединились бы. История не знала бы тогда сражения у Лесной, а может быть, и полтавской победы… Но в эту кампанию все начинало складываться фатально для шведов. Все гонцы Левенгаупта к Карлу были перехвачены русской конницей.
Движение шведской армии от Старицы к Стародубу (80 верст) через болота и непроходимую лесную чащу сопровождалось такими трудностями, что, не доходя Стародуба, Карл XII остановился и 15 дней собирал и приводил в порядок растянувшиеся войска.
Отлично осведомленный о движении шведов – и в частности, Левенгаупта – Петр I, как только узнал о предположенном их движении на Стародуб, немедленно распорядился об уничтожении всех запасов, накопленных Мазепой в Северской области, и о порче и без того скверных дорог.
Шведская армия получила нежелательный авангард в виде летучего корпуса Инфланда (4 тыс. драгун), предшествовавшего ей и выполнявшего все разрушения. В то же время Шереметев с главными силами (40 тыс.) шел параллельно шведам, заслоняя от них центрально-русские области, а Баур с 5 тыс. драгун преследовал их с тыла.
Еще во время стоянки Карла в Старице, 30 августа Петр имел возможность (искусно воспользовавшись утренним туманом) разбить у Доброго 6-тысячный отряд генерала Рооса. Эта первая удача подняла дух войск, а через месяц после нее была одержана наконец крупная победа.
Поручив Шереметеву, Бауру и Инфланду «заматывать» армию шведского короля у Стародуба, Петр с легким отрядом в 12 тыс. человек (из коих 7 тыс. драгун) пошел навстречу Левенгаупту и 28 сентября наголову разбил его 15-тысячный корпус в кровопролитном сражении при Лесной. Бой длился 10 часов с перерывом. Наш урон до 4 тыс. человек – треть всего состава (1111 убитыми, 2856 ранеными). Упорно дравшиеся шведы лишились 8 тыс. убитыми и ранеными, 1 тыс. пленными, 44 знамен, 17 орудий и всего обоза с припасами для армии Карла XII. Князь Репнин заслужил здесь прощение, а Петр называл впоследствии Лесную – «матерью Полтавской победы».