My favorite is a Hydor inline heater, which connects directly to the output connection of my canister filter. I also use Big Digital Temp Alert...
Once the temp is set, my temps never go +-
.5 degrees. By any chance it does, it will sound an alert if it goes about +- 5 degrees of my desired temp, which is 82°F (28°C).
The nice thing about the Hydor heater is, since it is inline, you cannot see the heater in the tank, so there is no chance of the fish getting accidently burned by the heater. I have 4 canisters using the inline heaters. My Eheim Pro II 2128 has it's own built in heater.
My 2nd favorite are stainless steel and titanium heaters, which look like this...

I used several Wonn Brother's titanium heaters and a ViaAqua Stainless Steel heaters. I originally bought the Wonn Brother's titanium heaters becuase of an instance I had with a glass heater that I broke inside my tank. I bought a few of them, but due to the costs, I looked for a cheaper alternative, which is why I bought the ViaAqua Stainless steel heater.