Karl X Gustav kemudian menyerahkan kedaulatan penuh atas Kadipaten Prusia kepada Friedrich Wilhelm untuk memperoleh bantuan militer, dan ia juga bersekutu dengan György II Rákóczi dari Transilvania yang menyerbu Polandia-Lituania dari tenggara. Sementara itu, Jan II Kazimierz dibantu oleh Leopold I dari Habsburg dan pasukan Habsburg memasuki Polandia-Lituania dari barat daya. Frederik III dari Denmark memanfaatkan kesempatan ini dengan menyerbu daratan Swedia pada musim semi tahun 1657 untuk membalas kekalahan dalam Perang Torstenson saat Swedia sedang sibuk di tempat lain. Brandenburg tidak lagi bersekutu dengan Swedia setelah Raja Polandia memberikan kedaulatan penuh atas wilayah Kadipaten Prusia kepada Friedrich Wilhelm berdasarkan Perjanjian Wehlau dan Bromberg.
Perang yang dilancarkan oleh Denmark menjadi alasan bagi Karl X Gustav untuk meninggalkan kebuntuan di Polandia-Lituania dan bertempur di Denmark. Setelah memimpin pasukannya ke barat dan melakukan penyeberangan yang berbahaya di selat yang beku pada musim dingin tahun 1657/58, ia melancarkan serangan kejutan di kepulauan Denmark dan memaksa mereka untuk menyerah. Perjanjian Roskilde kemudian mewajibkan Denmark untuk melepaskan semua provinsi Denmark di Swedia selatan. Sementara itu, persekutuan anti-Swedia berhasil mengalahkan pasukan Transilvania dan pasukan Polandia menyerbu Pommern Swedia.
Pada tahun 1658, Karl X Gustav memutuskan untuk kembali menyerang Denmark daripada kembali ke benteng-benteng Swedia yang tersisa di Polandia-Lituania. Kali ini Denmark berhasil menahan serangan Swedia. Sepanjang tahun 1659, Swedia berupaya mempertahankan bentengnya di Denmark dan pesisir Baltik selatan, tetapi sekutu tidak dapat memperoleh banyak wilayah. Ketika Karl X Gustav meninggal pada Februari 1660, penerusnya menyepakati Perjanjian Oliva dengan Polandia-Lituania, Habsburg dan Brandenburg pada bukan April, dan Perjanjian Kopenhagen dengan Denmark pada bulan Mei. Swedia masih tetap dapat menguasai wilayah yang didapat dari Perjanjian Roskilde, Kadipaten Prusia menjadi negara berdaulat, dan pihak-pihak lain kembali ke status quo ante bellum. Sementara itu, Swedia sudah menyepakati gencatan senjata dengan Rusia pada tahun 1658 dan perang di antara keduanya secara resmi diakhiri oleh Perjanjian Cardis pada tahun 1661.
Buchholz, Werner, ed. (1999). Pommern (dalam bahasa German). Siedler. ISBN3-88680-780-0. Pemeliharaan CS1: Bahasa yang tidak diketahui (link)
Frost, Robert I (2004). After the Deluge. Poland-Lithuania and the Second Northern War, 1655–1660. Cambridge Studies in Early Modern History. Cambridge University Press. ISBN0-521-54402-5.
Hrushevskyi, Mykhailo (2003). "Between Moscow and Sweden". Illustrated History of Ukraine (dalam bahasa Russian). Donetsk: BAO. ISBN966-548-571-7. Pemeliharaan CS1: Bahasa yang tidak diketahui (link)
Frost, Robert I (2000). The Northern Wars. War, State and Society in Northeastern Europe 1558-1721. Longman. ISBN978-0-582-06429-4.
Press, Volker (1991). Kriege und Krisen. Deutschland 1600-1715. Neue deutsche Geschichte (dalam bahasa German). Vol.5. Munich: Beck. ISBN3-406-30817-1. Pemeliharaan CS1: Bahasa yang tidak diketahui (link)