What the message means, and why it is usually not your fault
Most of the time this message means exactly what it says and nothing more interesting: the server is not there any more. We scan the public Counter-Strike 1.6 master list continuously, and of the 17,584 distinct servers we have recorded, only 1,333 answered in the past seven days. Around 511 responded in the last day and 439 in the last hour. The great majority of server addresses circulating in old lists, forum posts and favourites files are dead, and no amount of troubleshooting on your machine will revive one.
Play now — free, no downloadBrowse serversBefore it connects, the client sends a small query to the server's address and waits for a reply describing the map, the player count and the rules. "Server not responding" means no reply arrived in time. It is a timeout, not a rejection.
That distinction matters, because a timeout is what you get from an address where nothing is listening at all. A server that is full, password-protected or running a mod you lack will answer and then refuse you, which produces a different message.
Given the numbers above, the first question is whether anyone has seen that server recently rather than what is wrong with your setup. A server browser fed by a live master list will simply not show a server that stopped answering, which is the quickest test available: if it is missing from a current list, it is almost certainly gone.
Favourites files and old guides are the usual source of dead addresses. A list of "best CS 1.6 servers" written in 2019 is mostly a list of servers that closed between then and now.
If several servers time out and others work, the pattern points at you rather than at them. The usual culprits are a firewall blocking the outbound query, a VPN or restrictive network dropping it, or the game being blocked from the network entirely.
If every server times out, test whether anything else on the machine can reach the internet, then whether the game specifically is being filtered. Networks that permit web traffic frequently block everything else, which is why a game can fail on a connection that browses fine.
Use a browser fed from the live master list rather than a saved list, sort by players, and pick something with people already on it. A populated server is by definition one that answered a moment ago.
There is also a fast way to find out whether the fault was ever local. Joining from inside a browser tab takes your firewall rules for the game executable, your VPN's treatment of it, and your local configuration out of the path entirely. If servers answer there and not in your install, you have your answer in about a minute. If nothing answers either way, the problem is the network between you and them, and that is worth knowing before you reinstall anything.