I fish the dirftless area of SE Minnesota throughout our Jan - Sept season. In the winter our streams run 35-40 degrees. I don't fish in the coldest weather, but I'm frequently out when air temps are 25-30 degrees.
I go with breathable waders -- same waders I use the rest of the year -- but add layers underneath. A pair of thin poly socks and long-johns, then heavier socks, heavier long johns and finally fleece pants.
As others have noted, make sure your boots aren't too tight as this will restrict circulation and make your feet cold. An additional pair of socks may make your feet colder if there isn't room for them, so make sure your boots are sufficiently roomy. I have a pair of wading boots that are a little bigger that I use in the winter. Some of my friends swear by boot foot waders in the winter. I've even fished some small streams with knee high muck boots in the winter.
Common sense, but worth noting, is to wade less. I tend to fish small streams and many of them can be fished from the bank. If I do wade, I try not to get too deep or to stay in one spot too long. If you're waist deep for 30 minutes intently nymphing a deep run or trying to match a midge hatch with numerous fly changes, you'll get cold!