Первое сражение со шведами у Головчина 3 июля 1708 г. русские проиграли, несмотря на превосходство в силах. Шведы добились успеха стремительной штыковой атакой. Карлу XII открывался путь на Смоленск. До Москвы ему оставалось не более 350 вёрст.
В бою при селе Добром 28 августа русские действовали более успешно и нанесли поражение передовым силам шведов. Карл XII, преследуя русские войска, всё больше уклонялся к югу от кратчайшей дороги на Москву через Смоленск. Историки до сих пор не могут объяснить, почему шведский король, собираясь идти на Москву, оказался на Украине. Вероятно, он хотел пополнить продовольственные запасы. Король мог также рассчитывать на поддержку украинского казачества, которую ему обещал гетман Украины Иван Мазепа, вступивший в тайные отношения со шведами ещё в 1707 г.
Пётр и его окружение не подозревали о намерении Мазепы перейти на сторону шведов и были потрясены, узнав о бегстве гетмана к Карлу XII. Правда, Мазепа не смог поднять против царя всё украинское население. В шведский лагерь он прибыл с 4 тыс. казаков. Позднее к гетману присоединились запорожцы, и его силы достигли 10 тыс. человек. Надежды шведов на то, что на Украине их поддержит многотысячная гетманская армия, не оправдались.
В то время, когда Петру стало известно о бегстве Мазепы, военная обстановка изменилась в лучшую для России сторону. На помощь Карлу XII шёл из Риги корпус генерала Левенгаупта с огромным обозом в 7 тыс. подвод. Поначалу из-за нерасторопности русских войск они переправились через Днепр. Однако далеко им уйти не удалось. 28 сентября 1708 г. на небольшой поляне у деревни Лесной произошло сражение, продолжавшееся с 8 часов утра до 8 часов вечера. Несмотря на упорное сопротивление, шведы потерпели поражение. Они потеряли 6397 человек убитыми и ранеными, около 700 – пленными. Русские потери составили 3967 убитых и раненых. Захвачена была часть обоза, остальное шведы утопили в реке.
Левенгаупт привёл к Карлу XII лишь 6503 человека. Шведская армия осталась практически без пороха и провианта. Не достались шведам и богатые запасы гетманской ставки в Батурине. Узнав об измене Мазепы, Пётр приказал разделаться со ставкой, и в начале ноября Батурин был сожжён царскими войсками.
Весной 1709 г. шведы осадили Полтаву – важный опорный пункт Левобережья Украины. После семинедельной осады комендант Полтавы сообщил Петру, что гарнизон не сможет держаться долго. Пётр решил дать генеральное сражение. Царь счёл, что русская амия готова к этому, так как приобрела необходимый опыт, а противник сильно измотан.
В ночь с 19 на 20 июня русская армия переправилась через реку Ворсклу на плацдарм севернее Полтавы. За спиной русских была река, слева – лес, справа – глубокий овраг. Атаковать русский укреплённый лагерь можно было только через поле, на котором были возведены земляные укрепления – редуты.
Шведская армия под Полтавой имела около 30 тыс. человек. Но лишь 14 тыс. солдат были здоровы и боеспособны. Катастрофически не хватало пороха. И всё же Карл XII решил атаковать 42-тысячную русскую армию, имевшую 102 пушки! Шведы собирались провести стремительную атаку русских позиций «в лоб» без артиллерийской поддержки, дабы не терять времени. По тем же соображениям они не попытались обойти редуты. Фактически король бросил своих солдат в штыковую атаку на артиллерийские позиции. Такой безумный натиск не раз приносил шведам успех. Но за прошедшие годы русская армия многому научилась.
27 июня в 2 часа ночи шведская армия скрытно подошла к редутам, но была обнаружена и подверглась артиллерийскому обстрелу и кавалерийской атаке. Уже на этом этапе сражения шведы понесли большие потери, особенно от артиллерии. За это время Пётр вывел армию и построил её в две линии. Бешеной атакой шведы прорвали первую линию. Пётр лично возглавил контратаку батальона второй линии. На месте прорыва завязался упорный рукопашный бой, который вскоре стал всеобщим. Шведы, обескровленные артиллерийским огнём «в упор», не выдержали этой страшной бойни более двух часов и отступили. Вскоре их отступление превратилось в бегство.
Карл XII, за несколько дней до Полтавской битвы тяжело раненый в ногу, собрал 16-17 тыс. уцелевших солдат, намереваясь увести армию в Крым.
Русские вместо преследования шведов торжествовали победу – отслужили молебен и устроили пир. В царский шатёр привели пленных шведских генералов во главе с фельдмаршалом Реншильдом и первого шведского министра графа Пипера. Именно тогда Пётр поднял знаменитый тост «За шведских учителей» и вернул Реншильду шпагу в знак признания его доблести и военного искусства.
Лишь утро 28 июня была начата погоня. 30 июня кавалерия М. М. Голицина настигла у села Переволочны бегущую шведскую армию. Карл XII с горсткой приближённых и Мазепа успели переправиться за Днепр. А 16 тыс. шведов сдались 9-тысячному отряду русских.
Значение битвы под Полтавой. Полтавская победа не только избавила Россию от опасности шведского завоевания. Она в корне изменила расстановку сил в Северной войне. 9 октября 1709 г. в городе Торне (Торуни) Пётр встретился с Августом II и подписал с ним новый договор. Курфюстр обещал бороться с противниками России в Польше, а Пётр – вернуть ему польский трон. Эстляндия должна была отойти к России, а Лифляндия по-прежнему оставалась за Польшей. Вскоре был заключён новый русско-датский договор. Северный союз был восстановлен.
Разгром основных сил Карла XII резко изменил и ход войны в Прибалтике. 4 июля 1710 г. после затяжной осады капитулировала Рига. 15 августа сдался гарнизон Пернова (Пярну), 29 сентября пал Ревель (Таллин). Не только Эстляндию, но и Лифляндию Пётр объявил частью российской территории, нарушив Торунский договор: соотношение сил в Северном союзе изменилось, Россия теперь открыто диктовала свою волю.
Окончание войны. Вскоре после победы под Полтавой Пётр I предложил Швеции мир и потребовал не только Ингрию, но и Карелию с Выборгом. Карл XII, находившийся во владениях Турции, от переговоров отказался. Не заставили его смягчить свою позицию и победы русских в 1710 г. На что же рассчитывал король, потерявший всю свою армию и все свои владения в Прибалтике. Главной ставкой в его игре являлась Турция. Карл неустанно доказывал султану, что поражение Швеции усилило опасность, грозящую Порте со стороны московского царя. Выход – союз со Швецией. План короля состоял в том, чтобы с помощью турецкого султана вернуться в Польшу, воссоздать армию и ещё раз попытать военного счастья в России.
Понятно, насколько был заинтересован Пётр в сохранении мира с южными соседями. Когда в январе 1710 г. Турция возобновила договор 1700 г. с Россией, в Москве это праздновали, как победу. И всё же в конце 1710 г. Турция, обеспокоенная ростом российского влияния в Польше, Турция была вынуждена объявить войну России.
Понимая, что турецкая армия вторгнется в Польшу, Пётр решил опередить противника и начать войну на его территории. Ранней весной 1711 г. русская армия двинулась к границам Молдавии и Валахии – вассальных княжеств Турции. Царь рассчитывал на поддержку молдавского господаря Дмитрия Кантемира и славянских народов, мечтавших об освобождении от турецкого ига. Однако помощь эта оказалась незначительной.
Из-за распутицы войска продвигались медленно. 140-тысячное турецкое войско, переправившись через Дунай, отсекло от основной армии русскую кавалерию. Военный совет русской армии принял решение об отступлении. На берегу Прута 38-тысячной армии пришлось остановиться. Противник окружил русский лагерь. Турецкая конница и янычары подступили вплотную, готовясь к атаке. Но на штурм турки так и не решились.
10 июля для переговоров с турками был направлен вице-канцлер России Пётр Павлович Шафиров, талантливейший дипломат, выбившийся, как и Меншиков, из низов. Оказавшись в безвыходном положении, Пётр был согласен вернуть туркам всё у них завоёванное, возвратить Шведам Эстляндию и Лифляндию. Вместо Ингрии Пётр был готов отдать Псков или иные земли. Царь наставлял своего посланца: «Стафь с ними на фсё, кроме шклафства (рабства)».
В этой ситуации условия, на которых П. П. Шафирову удалось заключить мир, кажутся на удивление выгодными. Россия обязалась вернуть туркам Азов, срыть Таганрог, пропустить на родину Карла XII и не вмешиваться в польские дела. О шведских интересах турки не позаботились совсем. Такая их сговорчивость объясняется просто. Обладая огромным численным превосходством, турецкие войска значительно уступали регулярной русской армии в боеспособности. Даже янычары отказались идти в атаку и потребовали скорейшего заключения мира. Визирь, подкупленный русскими, остался глух к уговорам Карла XII, который горячо убеждал дать ему 30 тыс. турецких солдат, обещая привести пленником самого царя.
Армию Петру I удалось спасти. Больших территориальных потерь Россия не понесла. И всё же Прутский поход окончился провалом. Усилия Петра закрепиться в Приазовье пошли прахом. Однако энергичный царь радовался заключению мира с Турцией и возможностью сосредоточить все силы против главного своего врага – шведов.
В 1711 г. русские войска вошли в шведскую Померанию, а весной 1713 г. 16-тысячная русская армия высадилась в Финляндии и овладела Гельсингфорсом (Хельсинки), Борго (Порво) и Або (Турку). Пётр предпринял вторжение на территорию Финляндии, чтобы «было, чтоб при мире уступить», и в надежде, что «шведская шея мяхче гнутца станет».
Летом 1714 г. русские галеры двинулись от Гельсингфорса к Або. Шведский флот под командованием адмирала Ватранга перекрыл им дорогу у мыса Гангут, южной оконечности полуострова Гангут (Ханко). Зная, где на полуострове находится узкий перешеек, Пётр и его адмиралы решили перетащить галеры по суше, минуя шведский заслон. Ватрангу сообщили об этом. Он направил часть своей эскадры туда, где русские вытаскивали свои галеры на берег, а другую под командованием контр-адмирала Эреншильда – к месту их спуска на воду. Сам он остался у мыса Гангут, вдвое сократив свои силы.