Generally speaking, STEAM-CLEANING is the only cleaning method recommended by major carpet manufacturers for thoroughly cleaning your carpets. Sure other methods such as dry-cleaning, or chemical cleaning give nice results, but if the carpet is closely examined afterwards, Steam-Cleaning will have removed far more soiling and staining.
Like all methods of carpet cleaning, It is important to only use a professional service to avoid damage to your carpets. For example some carpets should not be scrubbed at all, and could result in fibres coming loose and totally ruining the look of the carpet's appearance.