This winter, I did the following every one to two weekends (depending on conditions): remove chain, chain ring (1x9 setup), and cassette. Degrease and clean these parts. Wash wheels and bike with soap. Re-oil.
It sounds excessive compared to other replies, but the Minnesota snow, sand and salt really gum stuff up. By Thursday and Friday nothing felt like it worked crisply. Now that the weather's good I don't usually do much besides oil, but I still take things apart and clean them every once in a while. And I try to wash everything with dish soap every couple weeks.