AnyDVD is a good commercial one to decode the DVD's.
From there I just copy the decoded VOB files onto my hard drive.
Then I use the x264 codec and a simple MeGUI to encode the video. You get an extremely good quality to file size ratio through this method... but you'll likely need a guide to get you started.
This is a lot of work though, and I only recommend this if you archive your work. As you mentioned, this takes me 12 hours per movie, and my processor is slightly better than yours.
I imagine it would go fairly quick with a Core 2 Quad though...