I would choose any program that can handle editing at a pixel by pixel level that has layers.
photoshop and gimp are some pretty common.
also if you don't want to pay a great deal you could always get Photoshop Elements. there really isn't anything you can't do in terms of pixel art in elements that you couldn't also do in the full up version.
As someone who did a lot of pixel art in her time, I found that I enjoyed being able to work in MSPaint, but I favored photoshop for the sake of layering. It was nice that, if I messed up bad enough, I wouldn't have to redo EVERYTHING, but rather just remove that layer and work it over again. Just stuck with a nice little pencil tool, 1pt.