One more word on WD40... I never use it on my Chain or Derailuers, I use it to clean the FRAME, Rims, and such.
I use degreaser with a Chain cleaning gadget (you know the type), I also use degreaser (not all the time) on the cassette and chain rings, then I relube... every weekend in the winter!