I have this article taped onto my fridge just as a starting point:
Winter Layering Done Right: How to Dress for Cycling in Cold Weather

It's all about being like an onion. Layers! On the legs, it's tights according to how cold it is like mentioned before. I use knee and leg warmers over tights to dial things. Up top, I start with a breathable long sleeve base (think Under Armour, but off brand so you're not paying as much), then a typical short sleeve jersey, thin wind breaker vest, then thin wind breaker jacket or slightly thicker (but still thin) fleece jacket. Arm warmers can be used if really cold. If I get hot, I can easily take off vest, jacket, or arm warmers. I have various bike specific gloves for different temps, but when it's really cold I use ski gloves. I have heard great things about BarMitts, but I'm too lazy to switch between all my bikes on various days. For shoes, I took an old pair of biking shoes and a old pair of thermal shoe covers, and then used a glue gun to put them together. I then glued toe covers over that. Just don't glue the heel area or you won't be able to get the shoes on. I also replaced the insoles with thermal insoles: Thermal Insole. On the head, I use a thin Pearl Izumi skull cap. Just remember, you want to start off a little cold because you will warm up quickly. If you start off too warm, you're going to sweat, and no matter what high tech fabric you have you're going to be wet and REALLY cold. When things get really really cold, toe and hand warmers FTW. If you buy winter gear in the middle of the summer you can get it super cheap.