Which exactly ports you are forwarding ( opening ) on the PC ?
Game client doesn't need port forwarding. Just open the game and connect to a server. If you get timeout to a specific server, try to ping the server address using command prompt. If that address is unreachable, then there could be some routing problems outside your network, or some ISP blocks.
Server hosters, instead, need to port forward the same port as specified in "sv_port" parameter (usually 64100 or 64097), set in server.cfg
If they want to enable remote management, they should also port forward the port specified in "rcon_startserver port:" parameter. (use "http_startserver port:" if you want to use Str1k3r's rCon tool),
Server admin can decide both ports editing server.cfg
I'm hosting 2 servers behind a NAT, only thing I did is to port forward just 2 ports (+ 2 for rcon management) and the only problem I got is that some people just can't connect. But that is only because of ISP blocks AFAIK. Nothing I can do.