The engine by itself produces a lot of waste heat. But modern engines are more efficient and take a while to warm up (especially diesels, but small turbos like Honda 1.5 too) so cars sometimes implement resistive heating to heat the cabin quicker.
Also some cars have independent heating that can be used to heat up the car up without running an engine. Not sure how exactly it works but I think it uses special battery.
AC compressor of course takes a lot of power.