I used a commercial steam cleaner company in our home, and wasn't happy with the results.  I felt like they pulled the dirt from the top 1/8" of the carpet, so when they left, it looked great.  But within weeks, it was like the deeper dirt oozed back to the surface.
I rent a "Rug Doctor" DIY unit, and since I know where the dirty spots are, I can spend more time on them and clean deeper.  Yes, the carpet will be damp, but a good fan blowing will have it dry overnight.  I prefer to spray stains with a spray bottle; then just use clean hot water in the machine.  No residue left behind that way.
One other thought: if you just have some spots that need to be cleaned, you could go to an auto detailer, who will use a "spotter" (a small version of the spray/vacuum system).