I do both (Eastern Ontario, so get cold winters).
I always run stabilizer just to keep the fuel "dry" (run E-10 fuel which can have moisture issues). Come the end of the season, I simply pull the fuel line, fire up the motor on a flusher or tank and let it run itself out. When it starts to sputter I usually give it a shot of fogging oil right down the carb throat.
Then pull the sparkplugs, give each cylinder a shot of fogging oil and then (with the plugs still out) turn the flywheel over by hand a couple rotations. Put the plugs back in and tighten them up.
Then drain the lower unit and replace the oil - figure if there is any water/moisture in there, best to get it out before temps drop - plus it's ready to go next season.
Store it upright (normal mounted position) and that will let any water in the exhaust housing to drain..
The "not running it dry" applies to EFI models - you need to keep the (seals) on the injectors moist/oiled (whatever) to prevent issues. For those whether it's 2 stroke OR 4 stroke you mix up an oil heavy mix (25:1 - stabilized - have also seen some recommendations to spray fogging oil right into the mix as well) and run it until the motor starts to really blow smoke - then shut her down and call it good.