I once bought a single license of Microangelo for creating icons which served me well in the past, but now I'm helping run up a new Virtual Machine base for our dev team to use and would like to include a decent free icon editor in there.
I'd prefer something that fully supports creating icons for Windows Vista.
For all those of you thinking "Don't let a developer design graphics!" just pretend I said "for our UI Design Team" instead of "Dev Team", lol. ;)
That's simple, because it's free, powerfull and supports Vista Icons (256x256): IcoFx
On this site you can find a tool for (animated) cursors, too: AniFx
If you want to pay, I'd suggest a more powerful ones: Axialis Iconworkshop
I would use Inkscape to design the icons, and then render them scaled down and convert them to the final format with Gimp
The benefit of this is you can design the icon once, and produce it in many target sizes effortlessly.
That's what the OpenSource world are doing these days :) ( We even have Native SVG Icons now )
I would recommend Paint.NET, or The GIMP. They're not specifically for icons, but will do the job and much more. Also, both free.
EDIT: Paint.NET requires plugin (free).
For icons, there's IcoFX.