It is a good idea to read the label of the top coat paint to make sure it is compatible with the primer. Under some circumstances, an extra application of the top coat takes the place of a primer coat.
Primers come in both oil-base and latex. Use latex primer on sheetrock and oil-based primers on unpainted wood. Do not use latex primers on bare wood, unless information on the paint can indicates it will not raise the wood grain. It is the water in the latex paint that raises the wood grain, making the wood surface rough. Under some circumstances the raised wood grain is not caused by the paint, it is caused by not sanding the wood smooth.
To paint wood paneling, use an oil-based primer over the wood before applying the top paint coat. If the paneling is vinyl, use a special primer for vinyl before painting. This procedure also applies to painting vinyl wall coverings.
Usually concrete does not need priming. If painting new concrete, let it set and age a few months before painting or paint will peel. Before painting, remove the alkaline in the concrete by cleaning it with muriatic acid. Acetone cleaner maybe used to remove grease and other foreign substances. Both of these chemicals are toxic and should be used with good ventilation and caution. After removing the alkali, fill the concrete or cinder block holes with some type of filler or use a special heavy body paint that primes, fills, and finishes concrete in one operation. After the filler has dried, paint the concrete with two coats of paint.
When painting metal, use a metal primer. There are primers that have additives that inhibit rust development. Before priming rusty metal, you should remove all the rust. If there is any rust left, it usually discolors the primer and top paint coat as well as continues to oxidize the metal. After priming the metal, use an oil-based or latex paint for the top coat.
You cannot always use a latex paint over a metal primer. Some products that are primed at the factory, such as some metal doors, will not accept a latex paint. So you have to use an oilbased paint.