翌1709年春になり、カール12世は前進を再開したが、飢餓や疫病のためにその数を3分の1に減らしていた。カール12世は食糧と拠点を手に入れるべくウクライナのボルスクラ川沿いにあるポルタヴァを包囲した。ピョートル1世は既にここを守るための大軍を組織しており、彼はすぐに到着した。7月8日（露暦6月27日/瑞暦6月28日）、ロシア軍42,000人とスウェーデン軍16,000人がポルタヴァで会戦した。カール12世は先の包囲戦の最中に狙撃されて負傷しており、指揮権はカール・グスタフ・レーンスケルド将軍に委ねられている。激戦の末に数に勝るロシア軍が大勝し、スウェーデン軍は数千人の戦死者を出して潰走した。カール12世はオスマン帝国領へ逃れ、スウェーデン軍の残余はペレヴォローチナで降伏した。