Summarize this article:

Most of the basic thermal greases contain silicone and zinc oxide, while more expensive compounds contain heat conductors such as silver or ceramic. Silver or ceramic thermal greases facilitate more efficient heat transmission. However, the basic thermal grease will sufficiently fill the needs for most applications. If you are planning on overclocking your computer, try to get thermal paste composed mainly of silver, copper, or gold. These are the most conductive metals commonly used in thermal paste. Wipe the surface lightly with a cotton ball or cotton swab dampened with isopropyl alcohol. The higher the percentage of alcohol the better. 70 percent is good but 90 percent is better (if you can find it). Ideally, the two touching surfaces will be perfectly flat, which would completely eliminate the need for thermal paste. If your heat sink base is rough, you can wet-sand it with fine grit paper or emery cloth it to make it smoother. This isn’t necessary unless you are aiming for the ultimate in cooling performance. Thermal paste is designed to fill in the gaps and imperfections on the surfaces that you are joining. Since modern production techniques cannot make surfaces without imperfections, thermal paste will always be necessary.
Choose a good thermal paste. Clean the CPU and heat sink surfaces. Sand the heat sink and processor surfaces if necessary.