weird, i was playing until about 2am EST with some EA server/login issues around midnight that went away after about 30 minutes. I quit/relaunched the game a few times and had no issues there. Win 7 64 Ultimate Clean-installed Punkbuster during game install.
Well I tried something that should be standard operating procedure when running a game that uses Punkbuster: I updated it. Now I have no issues connecting to servers. At first I thought it was just EA servers but I think it's PB not giving an error when you get kicked or trying to connect. Or it could just be coincidence and I am just getting lucky now
I fired up BFBC2 and joined a server from the server browser. Had no unlocks and was kicked in 20 secs due to PB INIT error or some shit. Tried the Play Now feature and it wouldn't connect, tried it again and it CTD right away.
This game is a huge pile of shit.
Edit: As a follow up I joined or tried to join a couple more servers. Most of the servers that actually let me join had kicked me in less then 15 seconds, just straight up kicked from server message. Only one server didn't kick me but it was so choppy it might as well have anyways.