The Make utility is not for beginner's use. The best way to understand Make utility is to go through the official manual , which you can download from the GNU community website.
Basically Make internally uses the last modified time stamp of file, for deciding whether to compile of not. I mean lets say you have one source file hello.c and you compiled this particular file using gcc you would got hello.o for first time. Now if you add/ remove some line in your source file hello.c and again used gcc for compilation make utility would generate a new hello.o file . But lets say if you have not changed anything in your original hello.c then make will not generate any new hello.o file.
So in short " If make utility check that source file last modified time stamp is latest than the object file(.o) file that means source file has been changed since last compilation , in that case make would generate a new object file otherwise make would skip the recompilation for that particular source file."
The above concept is very useful and important for larger projects. Because if you have changed in a particular source file than there is no need to recompile everything all over again. Only the dependent files should be recompiled ....This can be done by using make utility .... This reduces great amount of time while we are in development phase of any project. Because during that time we sometime change some line in a particular file in the entire project.
Hope above explanation would be of some use to you.. For usage please go through the official manual from GNU .