Den 5 juni 1657 förklarade Danmark krig mot Sverige, samtidigt som Sverige var hårt pressat i krigen mot Polen och Ryssland. Trots att Karl X Gustav var djupt indragen i konflikten med Polen, valde han att förflytta huvuddelen av sin armé till Jylland för att invadera Danmark. Kungens ilmarscher överraskade de danska trupperna och huvuddelen tvingades att retirera till fästningen Frederiksodde, som stormades och intogs av svenskarna den 27 oktober. Med Jylland säkrat ville Karl X Gustav fortsätta vidare mot Köpenhamn på Själland, men han hindrades av de danska sunden och den danska flottan. Då 1600-talet var det kallaste århundradet under lilla istiden och vintrarna i Skandinavien var mycket kalla, planerade kungen att utnyttja kölden genom att vänta till dess att tillräckligt tjock is hade bildats på sunden, för att därefter genomföra en riskabel marsch över isen.