A stock heatsink can handle small overclocks. In the case of some Core2Duos (I'm not famillair with the newer ones), they can handle pretty decent overclocks.
Some others will need a heatsink upgrade.
About overclocking using a program, I generally don't advise it. BIOS overclocking is a much better way to do it.
How much to overclock at a time? Most people suggest 5mhz FSB at a time. As you can imagine, this will be a slow process. If you have read other people's overclock on the same processor, you can try to reach similar values without upping it 5 mhz at a time (if people are reaching 3ghz, start off at 2.8ghz or something).
Just keep increasing it, and see if you're still booting up normally. If you are, go back to BIOS and increase it somemore.
An overclocked computer is useless if its not stable, so you will also want to check for stability. Get something like Orthos, and see if it'll run for >10 hours, which means you'd want to leave it overnight. This is best done after each increase in FSB, but will take forever, so usually I do it after reaching a speed that wouldn't load Windows properly (and scaled back a few hundred mhz).
Its a tedious process, and even if you're experienced at it, will take you a few days to do (unless you're going for a small overclock, but even then, a >10 hour orthos check is still recommended, the longer the better).
Another thing you can do with the stability; instead of checking for just a plain windows boot, run orthos for 5 mins after each increase in FSB. If there's no errors after 5 minutes, chances are you might be able to push it a little furhur.
To help us all help you a little more, you should tell us your CPU, motherboard and RAM with as much detail as possible.