Just some "big picture" comments -
The Arduino doesn't put-out enough current to directly-drive a relay coil but there are lots of "relay boards" that have a driver circuit, and you can find boards with multiple relays.
There are solid state relays that can be driven directly from the Arduino. (But assuming you are switching DC, make sure to get one made for DC. AC & DC solid state relays are not interchangeable.)
A MOSFET driver (for DC only) isn't too hard to build but a relay is easier.
Assuming you want to maintain a target temperature, of course you'll need to measure temperature.
There are analog & digital solid-state temperature sensors. The analog sensors are easier because they just wire into the Arduino's analog input and the reading is proportional to temperature.
Since temperature can't change instantly, virtually all heating & cooling systems cycle on & off (rather than controlling the power like a light dimmer).
So that's pretty easy... Turn-on the heat when you're below target temperature and turn-off when you are above it. The programming is super-easy and many thermostats don't have any kind of programmable microcontroller.
But in reality there is usually some hysteresis or "swing"... The heat is turned-on when you are 1 degree (or 1/10 of degree, etc.) below target and then it stays-on until you are 1 degree over target. That keeps it from turning on & off hundreds or thousands of times per second and it keeps a regular relay from "chattering".
If you need a temperature display (if the temperature is adjustable you usually want a display) that's actually more complicated than the actual temperature control.
As always - Work on your input (temperature reading) and output (relay switching) separately before attempting to put everything together. And if there is a temperature control knob or buttons (input) or a display (output) work on those separately too.
It also helps to "develop" your code a little at a time. If you're a beginner that often means one or two lines of code at a time. But that takes some skill too... You can't just start at the top and write the first-few lines because the complier needs to see a "complete program".