The difference is, that reviewing your memory allocation is a matter of program performance, not of program correctness. And you don&#x27;t have to do it everywhere. Just make sure that in the hot spots of your program there is not excessive heap allocation. 
The benefit of GC is the correctness you get by never having to call free() and the drastic simplification of all program parts which do have to alloc memory. In C, for anything that does get allocated on the heap, you have to carefully observe who is in charge of deallocating it later in the programs lifetime and to make sure that there are no pointers to it left. GC will take this complexity out of your program, which can make a lot of code much simpler.