Generally blowing into a heatsink will yield better results.
Here's are two main reasons (to the best of my knowledge):
1. Turbulent air transfers heat better. When the air is blowing and spinning around and such, the air has a greater effective surface area since the air on the inside of the air column has a greater chance of rotating to the surface (amoung other reasons). This happens on both sides of the fan, but to a MUCH greater degree after passing through the blades.
2. Getting air to the hottest part cools the most. When a fan is blowing directly into the fan a lot of it is directed toward the center (where the cpu heat is originating from). When the fan is blowing outward then most of the air traveling through the heatink it flowing through the upper portion (since the fan pulls the air closest to it first). In this case, the heat from the CPU has to spread out and travel up the fins of the heatsink before the air (which as mentioned before is less turbulent before passing through the fan) transfers the heat away. This also has the added inefficiency of "heat stacking". Since the heatsink holds the heat longer than with the blowing action (and therefore more total heat) the thermal efficiency of the metal drops, giving you higher temps.
Of course, all of this happens to different degrees in different situations. The best option is always to try it and see if it helps you personally, though most every test I've seen with this has shown "blowing" to be far superior to "sucking"... unless you're my girlfriend, in which case you would prefer not to have a fan in the first place.
-=mac=-