I use an old trick from my motorcycle days, which was to lube the chain right after you get back from a ride.
The chain is warmed up considerably from the friction of riding, and the lube penetrates very nicely. Furthermore the bike may sit there for a day or more before you ride it again. This gives the solvent in the lubricant time to boil out of the mix and leave just the lube behind, which reduces the amount of lube thrown out on your rim.
I used to do all my chain cleaning by hand, with rags and brushes and solvents, etc. Also break down the chain, put it in a tupperware container with solvent in it and put it on top of the washing machine while I ran a few loads through, which provides a nice agitation.
I finally got a Park chain cleaner and tried it out on a chain which I had already cleaned by hand. I was stunned at the amount of small, gritty, hard particles that came out of the chain. Those little brushes that dig down between the plates really do work, and I am a convert. Plus, it is REALLY easy to do in about three minutes.
Whit