After almost every ride, I wash my bike with car wash soap and water. I then towel it all down and make sure no water is sitting on anything. I use a spray wax to give the frame a nice coat so the mud and dirt will slip right off.
The chain I have a cleaner kit thats aweome. It hooks on to your chain and derailer and you spin the cranks backwards. Boy does it clean the chain well. I re oil and clean it every few rides or so depending on conditions of the ride.
I like a clean bike.