All right, here's my two cents.
If you are an American citizen, and haven't already purchased DVDFab, that takes that program out of the running as a decrypter. So your two best choices would be AnyDVD HD and MakeMKV.
MakeMKV is free to use while in beta for all types of decryption. If it ever goes out of beta, Blu-ray decryption will be only available for those who pay for the program, but DVD decryption will be free still. So what disadvantages does this program have?
1: It will not compress anything.
2: MakeMKV only rips DVD's to mkv files, not ISO or DVD-video format, and you won't get original menus or extras.
3: You need to put a new beta key in each month or so to keep using the program. The beta keys are free to download from their forums.
MakeMKV may not be updated quite as quickly as AnyDVD HD, so you have to take that under consideration also. But it is the only choice for free decryption of Blu-ray for many people.
If you want to compress DVD video to fit onto single layer blank discs, a program called DVD Rebuilder has no peers. You must decrypt your DVD first, in order to use it, but quality of output is second to none. There is a free version as well as a commercial one, and most can use the free one with no great disadvantages.
If you use MakeMKV to rip a DVD to an mkv file you will only get the main movie. But if you want to make a DVD-video out of it, use AVStoDVD. It can make either a compressed version to fit a single layer disc, or an uncompressed copy. The uncompressed copy might need to be burned onto a double layer disc, depending on the size of the movie.
And if you want to talk about Blu-ray, MakeMKV can rip the entire movie to the hard drive in Backup mode (or it can rip the main movie only as an mkv in its normal mode). To compress, use BD Rebuilder if you want to keep it in Blu-ray format. If you want a compressed mkv or mp4, use Vidcoder, or Handbrake or Ripbot264. All of these are free to use and are capable of producing excellent results. I'd pit them against any commercial software you want to name.