Главные силы шведской армии во главе с Карлом XII выступили из Саксонии осенью 1707, в начальник 1708 вступили в Гродно, а затем, двигаясь через Сморгонь — Радошковичи — Минск, в июне 1708 форсировали Березину и подошли к русской границе. Главные силы русской армии были сосредоточены на московском направлении в районе Могилёва, имея возможность действовать против флангов противника в случае его поворота на Псков — Петербург (предположение Петра I) или на Украину (предположение А. Д. Меншикова). После неудачного для русских сражения 3(14) июля 1708 у Головчина (северо-западнее Могилёва) русская армия отошла за Днепр и сосредоточилась в районе м. Горки. Карл XII, переоценив свой успех и считая русские войска неспособными к сопротивлению, не дождался в Могилёве прибытия корпуса Левенгаупта (16 тыс.), выступившего в июне из Риги с большим транспортом продовольствия и боеприпасов, и в августе двинулся из Могилёва на Смоленск. Однако в боях у с. Доброго 30 августа (10 сентября) и деревни Раевка 9—10 (20—21) сентября шведские передовые отряды потерпели поражения, понеся значительные потери (до 5 тыс. только убитыми). Возникли трудности в снабжении войск продовольствием. Всё это заставило Карла XII между 10(21) и 12(23) сентября в с. Стариши принять решение отказаться от наступления на Смоленск и повернуть на Украину. В конце сентября (начале октября) шведы вышли к Костеничам (по дороге на Стародуб) и остановились здесь в ожидании корпуса Левенгаупта. Однако 28 сентября (9 октября) у деревни Лесной этот корпус был наголову разбит войсками Петра I, потеряв 2/3 своего состава и весь обоз.