diff --git a/Misc/NEWS.d/next/Windows/2024-02-01-14-35-05.gh-issue-111239.SO7SUF.rst b/Misc/NEWS.d/next/Windows/2024-02-01-14-35-05.gh-issue-111239.SO7SUF.rst
new file mode 100644
index 00000000000000..ea82c3b941f802
--- /dev/null
+++ b/Misc/NEWS.d/next/Windows/2024-02-01-14-35-05.gh-issue-111239.SO7SUF.rst
@@ -0,0 +1 @@
+Update Windows builds to use zlib v1.3.1.
diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat
index 50ef2fc4c5b60f..d12f6ffd1d699f 100644
--- a/PCbuild/get_externals.bat
+++ b/PCbuild/get_externals.bat
@@ -59,7 +59,7 @@ if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tcl-core-8.6.12.
if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.12.0
if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tix-8.4.3.6
set libraries=%libraries% xz-5.2.5
-set libraries=%libraries% zlib-1.2.12
+set libraries=%libraries% zlib-1.3.1
for %%e in (%libraries%) do (
if exist "%EXTERNALS_DIR%\%%e" (
diff --git a/PCbuild/python.props b/PCbuild/python.props
index 22d71a11b2eff0..b5c9d0e9e05e16 100644
--- a/PCbuild/python.props
+++ b/PCbuild/python.props
@@ -72,7 +72,7 @@
$(ExternalsDir)openssl-bin-1.1.1w\$(ArchName)\
$(opensslOutDir)include
$(ExternalsDir)\nasm-2.11.06\
- $(ExternalsDir)\zlib-1.2.12\
+ $(ExternalsDir)\zlib-1.3.1\