I come across some systems that are mildly infected - I can clean them up using manual removal methods, and several different legitimately free apps like ad-aware, spybot, etc.
When they are simply just over-clogged, or unstable after malware removal, I do reach for the reinstall.
Sorry, but I have up to eight client stops in a day... and if I spend that sort of time, potentially many hours, on one machine, I won't make anything. Why? Because I simply won't charge for every single hour I spend on such a situation. I hear all of the time of techs charging far more than I do, and having no compunction about charging far more than the cost of a new PC for the work!
I'd rather recognize when a machine is simply overwhelmed, cut my time losses, back up all of the data, reinstall Windows, repopulate data. The client gets a clean machine, free of malware and "winrot" and I get to stay on schedule, as well as charging a middle ground price that is fair to both the client and myself.