Creating a local SOCKS5 proxy on Windows makes it possible to route selected application traffic through a remote SSH server without changing the entire system network path, which is useful for reaching restricted networks, testing from another egress IP, or protecting traffic on untrusted Wi-Fi.
Using PuTTY for dynamic port forwarding exposes a local SOCKS listener (for example, on 127.0.0.1:1080) and carries proxied connections inside the encrypted SSH session. Applications connect to the local port using the SOCKS protocol, and the remote server completes outbound connections on their behalf, so only applications configured for the proxy are affected.
The proxy only works while the PuTTY session remains connected, and the SSH server must allow TCP forwarding for dynamic tunnels to function. Keeping the listener bound to the local machine avoids creating an accidental open proxy on the LAN, and using proxy-aware DNS settings (where available) reduces DNS leakage outside the tunnel.
Related: How to create an SSH SOCKS proxy
Related: How to create a local port forward in PuTTY
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html


Use an unprivileged port in the 1024-65535 range (1080 is a common SOCKS port).
Keep Local ports accept connections from other hosts unchecked to avoid exposing an open proxy to the local network.
A forwarded port entry like D1080 should appear in the list.

The default SSH port is 22.

Verify the server host key fingerprint on first connect, and investigate host key change warnings instead of clicking through them.
Closing the session (or letting Windows sleep) stops the local SOCKS5 port immediately.
Use SOCKS v5 (not HTTP proxy), and enable proxy DNS options (for example, Proxy DNS when using SOCKS v5 in Firefox) when available.
PS> curl.exe --proxy socks5h://127.0.0.1:1080 https://api.ipify.org 203.0.113.42
Replace 1080 with the configured Source port, and prefer socks5h to proxy DNS lookups through the tunnel.