Side note for anyone unfamiliar: Block heater warms the coolant (eventually also warming the oil somewhat). Oil pan heater warms the oil.
I'm a big advocate of the block heater. I try to use the block heater and battery blanket anytime the temp is below 0 deg. C. There are a number of good reasons for this: no need for more than 15 seconds of idling, warm air from the vents immediately, battery can charge much easier (especially in real cold weather), O2 sensor goes into operation quicker, alternator likes not ever having to use the rear window defrost. I don't agree with letting a vehicle sit and idle to operating temp, but it usually takes a couple minutes in cold weather for the engine to drop from its 2400 rpm fast idle to its 1600 rpm fast idle if not plugged in, and a few more to reach normal idle. I usually let it reach the 1600 rpm idle. Even if you begin driving immediately you will have horrible mileage for the first bit of driving.
I left my car plugged in for about 16 hours a day last year for the 3 coldest months (during work and overnight). My coolant temp was between 40 and 60 deg. C (based on std. dash gauge) whenever I started it. The total cost of this (if I had been paying for power): about $60 cdn. at 7 cents per kw-hr. Worth it for the gas I saved and the extended engine, oil, starter, and battery life.
Ideally though (if possible), plug in for 1-2 hr before starting down to 10 deg. C, 2-3 hr down to 20 deg. C, 3-4 hr down to 30 deg. C, and 4-5 hr down to 40 deg. C for better use of electricity.