I keep everything but my work truck plugged in if I know I am going to use it, and when it's below about -20, it stays plugged in any time it isn't running. 3 hours will get the engine warm, bit, not the transmission or any of the accessories on the engine, where plugging in a warm engine will keep them warm enough that they don't complain.
The Duramax, well, a start at -30 is as uneventful as one at 50 degrees, just the glow plugs actually come on and stay on long enough to count, still only around 3-4 seconds though.