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).