I live somewhere very cold in the winter (- 15 C) so my whole winter wardrobe is geared towards looking warm and nice at the same time.
I buy the men's 100% merino wool polo-necks from Uniqlo, and wear one of them as a base layer. Then, I either wear one of Unqlo's 100% wool coatigans over the top, or a similar chunky-knit cardi from somewhere else. COS had a gorgeous kimono-style wrap cardi last winter which I lived in, and may try to hunt down another of online.
Otherwise, I got some lovely knitted dresses from Muji. Again, 100% wool. I'd wear one of these under one of the cardigans above.
For the bottom, I bought many pairs of Uniqlo heattech knee, or over the knee, socks, and wore a pair of 100% wool ankle socks over the top of them. Then, I either wore chunky corduroy trousers - Zara had some nice ones last winter, but I also got a couple of nice flared pairs online, or, as a new entry to my wardrobe last year, I'd wear knitted trousers. You can google or search "knit culottes" on Zara to see what I mean.
My main way of keeping it looking decent is to mainly buy according to a coordinating colour pallet. I'm naturally pale with mid-brown hair, so I find that camel tones and earthy browns look best against my pasty winter skin. The cooler blues and pinks I'd wear during the summer make me look like a corpse by January.
Otherwise, you can just buy some Uniqlo heattech base layers and wear them under your regular clothes, if it's not actually that cold.