2003 BMW Z4 3.5i

I have a 2003 BMW Z4 3.5i (E85). This is my 3rd winter with the car, and it has about 72K miles on it now (only had 14.5K miles when I got it). I have never had any problem with the car yet. Today it is 0°F/-17°C in Chicago.
I went out to my car and started it this morning to let it warm up for about 10 minutes while I got a few things together for work (I don’t normally warm it up).
When I came back and got in the car the interior temperature okay, and the heat blowing on high setting was only medium-warm.
The coolant temperature gauge needle was pinned to the right (red hot zone) and the red warning light was flashing, so I immediately shut off the car. The radiator cap never blew off and there was no coolant anywhere on the ground.
Do you think I have a defective sensor, a bad thermostat, or a dead fan?
I wanted to check under the hood but it was frozen shut.