Lifted from this website (
http://www.howelumber.com/paint.latexoil.htm):
OIL: Oil based paints, also known as "alkyd" paints, are generally thought of as a more penetrating paint. The oils that the paint uses tend to go deeper into the pores of the surface you paint, and bond at a deeper level. The down side is that they can yellow over the years, and that in order to clean it up, you need to have paint thinner, turpentine, or other mineral spirits at hand. And just because oils penetrate deeper into the substrate (i.e. into the wood or whatever), it does not mean that an alkyd paint will never peel. Most paints will peel if water gets under them, or from weathering through time.
LATEX: Latex based paints bond to the surface, and so are useful for a number of applications. They provide a good seal at the surface, and maintain their color well through time, without the yellowing alkyd paints are known to have. They clean up with water, and dry in a relatively short amount of time. These are the main reasons so many people have opted to use latex paints, especially inside their homes.
------
My advice: Fill in any holes with putty, get yourself a nice orbital sander (NOT a belt sander) with a medium to light grit paper to smooth it all out, then stick with the latex paint. Oil looks nicer once it's done, but it's a pain to clean it up. I've never painted on MDF, but I've never had a problem with water absorption using Latex paint, so I see no reason to primer since the cabinet is (I assume) indoor use only.