1. If the coolant level is OK, then you do not have a leak, and the most likely cause is a failed thermostat (stuck in partially-closed position) as others said.
The other possible cause would be a failed coolant pump. This can sometimes be diagnosed by a visible leak or by excessive or grinding noise, or it may be seized. Removing the belt and turning the pump by hand can help get a feel if it has failed. But sometimes the only way to know for sure is by removing it and inspecting it (And, if removing the coolant pump, then depending of the age and mileage of the car, it might be advisable to just replace it with new anyway, I.e. even if no obvious fault is found, given that ultimately water pumps are wear items).
In theory this can also be caused by a failed cooling fan, but if you can hear it running then this is not the issue.
2. If the coolant level is low, then the overheating is the result of a leak, which needs to be investigated. Possible causes are:
Cracked or collapsed coolant hose
Leaking coolant hose joint
Corroded cooling system alloy part
Leaking coolant pump
Cracked expansion tank
Failed explanation tank pressure cap
Leaking radiator
Head gasket failure
The issue with coolant leaks is not just the actual coolant loss, but the fact that the cooling system is being depressurised as result, which lowers the coolant boiling point and caused the coolant to boil over - and vapour and air bubbles just don't conduct heat as well as liquid coolant does.
3. On some automatic MB cars fitted with the infamous Valeo radiator, coolant could leak into the transmission heat exchanger. However this issue affects older cars (from memory circa 2000?) do not likely to be an issue on newer cars.
4. On a general note, 'overheating' might turn out to be no more than a faulty temperature gauge or faulty temperature sender, so its always a good idea to have a second indication, and in this case the fan working overtime is proof that the issue is more than just a faulty gauge or sender.