If you're using a linksys router i've found that enabling the SPI Firewall in the router causes Steam games like CS: Source and TeamFortress 2 to lag very badly. I checked the logs and it showed that the router was dropping the UDP packets because it thought they were a DoS attack when i was receiving, and it was dropping them when i sent them because it thought i was trying to DoS the server.
Basically if i turn the SPI Firewall in the router off my games stop lagging, no more choke or loss. Also I noticed that while the SPI Firewall was turned on the Steam Server browser would return very few results and return them very very slowly. Turning it off i get way more servers and they pop up almost instantly.
My problems were on a linksys WRT54GX2 router, i then upgraded to a linksys WRT600N router and had the same problem with the SPI Firewall. Luckily though the WRT600N is supported by DD-WRT, they're a group that creates custom firmwares for linksys routers using broadcom chipsets. I flashed their firmware onto the router and it opened up so many new features that the linksys firmware doesn't provide. It also performs way better and lets you see so much more information about the router and your network.
Check out their website to see if your router is supported if you have a linksys: http://www.dd-wrt.com/dd-wrtv3/index.php. Just make sure to read about your router on their forums and make sure you're downloading the right firmware otherwise you could brick your router. If you're going to flash the DD-WRT firmware make sure you have a TFTP server app and one of the linksys firmwares (latest will do) so you can unbrick the router if it happens. Mine flashed fine, you'll most likely not have to worry about bricking it if you research on their forums and download the proper firmware.