This is a question that seems like political discussion: nobody ever solves the problem once and for all.
Some tests show that forcing air down on the heatsink is just slightly more effective than sucking it up (so to speak.) But the differences in load temperatures were never more than 1C or so.
Only my opinion, but I think that effective ducting could close that gap, as well. It depends on how you want to integrate CPU cooling with the rest of your system's fan deployments.