HDDs and SDDs generally don't have hardware compatibility issues. As long as your machine takes SATA drives (which it most likely does), any SSD should fit fine. Also, 120-128GB will be plenty if all you're going to put on it are the OS and programs. You might even get by with a 60-64GB if your program load is light (and you don't install any more RAM) but I don't recommend it. It's best to leave 20-25% of SSDs unused to prolong life and a 60-64GB SSD could be cutting it close. If you do any serious gaming, even 120-128GB might not be enough. If all you will put on the SSD is no more than 40GB, then a 60-64GB SSD would be alright.
I personally prefer the Samsung 840 Pro series and would recommend the 128GB drive. It gets amongst the best reviews. I know I've been happy with my 128GB 840 Pro. If your budget is tight, the Samsung 840 also gets excellent reviews.
Samsung is coming out with a new series of SSDs called the EVO. They are available for preorder right now. I would suggest not getting one until they've been out for a few months to see how they perform. The Pro series will still the top of Samsung's SSD line.
Stay away from any SSDs using the Sandforce controllers. The Sandforces have had a bad history for reliability and SSDs using them generally do not get as good of reviews as the SSDs that do not use them.
I personally prefer the Samsung 840 Pro. It's one of the top performers and gets great reviews but, naturally, it's one of the most expensive. A less expensive one that still gets great reviews is the Samsung 840, which has a 120GB SSD in its stable.