well depends on how much heat you want to dump and your ambient. Many heatsinks are made to mechanically suit their enclosure. A small chunky heatsink will be good for absorbing occasional bursts on power as they can "store" it and then release it over time whereas for continuos dissipation you need surface area, you want reasonable thickness near the device so that heat is moved away quickly. I had a heatsink once with a thick centre that thinned out as it went from centre to outer edges.