If your chain has a nasty grunge on it, you can use kerosene. Soap and water won't cut it in many instances.
Be sure not to use a stiff metal brush so you won't tear the rings.
DO NOT pressure wash it.
After it's clean get some of Jaybird's lube (MX1000 link on his post) and it will stay totally clean. His lube dries and attracts ZERO dirt. A bottle really lasts a long time, and your chain stays clean.
Don't listen to jaybird, just knock the large chunks of with the hose and put some WD-40 on it because O-ring chains don't need maintance :p
Seriouly, I use chain block scrubber. When the bike is up on a stand you can just put some Simple green or the grunge away stuff that comes with it in there and put it around the chain and spin the wheel. It has a wheel brush in the box that turns and scrubs the chain as it moves. Works very well. you just hit it with the hose to get the soap of and spin it dry, then lube.
PB Blaster is an excellent cleaner and rust desolver. Just be careful around rubber parts. I would not recommend PB Blaster for this application. I have had numerous instances in the past where this product damaged rubber parts. Specifically, orings, this product eats at the rubber and will eventually destroy its properties. Other than that it's an excellent product.
i have a question for you guys....has anyone tried clorox clean-up? This stuff works great on shoes even though your really not supposed to use clorox on leather, but do you think it would hurt the chain to try this stuff?