I agree with you that RPM has some useful features such as being able to tell if a package is already installed, however I still like to use tarred and zipped packages. I keep track of package installations on my system myself.
You are essentially correct about the installation of tar.gz packages. However, some packages vary slightly between one and another so normally to see the installation instructions you de compress the package and read the README and/or INSTALL text file which tells you how to complete the process. The make commands invoke make files
You can find more complete information on doing package installations including RPMs at:
Item 21 describes package installation. Also I think there is a howto on the subject at the LDP. The tar man page will also list the available options for unpacking the file.
If you have a c program you want to compile, normally you use a command like:
gcc programname.c -o programname