I've looked at DesktopSMS, EasySMS, RemoteSMS, Droid Messenger, MightyText and BrowserTexting.
Droid Messenger has you go through their website, which is a deal breaker for anyone who cares about the privacy of their text messages.
DekstopSMS is full of bugs and hasn't been maintained since August 2009.
I haven't tried RemoteSMS but the free version only supports WiFi and at work my laptop is on a network that my Android can't access, so I couldn't use it there.
EasySMS was the winner so far. Free with an option to donate 1 EUR for messages longer than 160 chars, with author actively working on the few outstanding issues, SMS threads are displayed in the browser over a local connection to the phone (no information leaves the phone or your computer). Worked fine over USB, including the in-browser notifications of new SMSes. Shows incoming MMSes. On the down-side, it can't mark as read on the phone the messages you have read in the browser, so if you have a notification LED flashing for incoming texts, it will keep flashing until you read the message on the Android.
BrowserTexting is free (but not open source) and uses AES end-to-end encryption between browser and the Android. The website doesn't explain exactly how it works, but presumably the android app and your web browser both connect to the browsertexting.com server. Features include no need to have mobile on same network as the computer, desktop and sound notifications, Chrome extension, bulk SMS, autosync with the phone's Inbox etc. No mention of MMS support.
MightyText is a lot like browsertexting. Free. No info about security. More confusing GUI, less features and a bit more buggy. Unfortunately with signup, but a lot of users and also chrome extension. Also worth a try.