I have been using AutoStitch for stitching panoramas for quite a while now (
http://www.cs.ubc.ca/~mbrown/autostitch/autostitch.html) and I just tried out the relatively new Microsoft ICE
http://research.microsoft.com/ivm/ice.htmlI have also used PTGUI in the past, which is excellent, but $110 away from free. It's definitely a good choice for having more control over the process.
Between AutoStitch and ICE, ICE seems to improve on the seemlessness of transitions and dealing with transient objects (like moving people). When in China, I did a ~360 pano in Tienanmen Square that never came out right with other programs because of the number of moving people, but ICE did a very nice job.

A couple of problems: it doesn't seem to handle unrelated images as well as AutoStitch, which seems hard to fool. And I had to change the default projection from cylinder to sphere manually for panoramas using more than one row of images.
One big advantage for ICE is the multiple format input/output. AutoStitch was an academic project and never really explored features. Since I use a P&S digital, I only work in JPG and it didn't bother me.
I'm a bit weary of possible vertical stretch distortion in some of the ICE images, but I'll have to play with it more. I know some was just a matter of switching projections.
You can see some more examples in this gallery of mine -
http://bradjudy.smugmug.com/gallery/6280446_Jkdad#396181815_hsRS9The first two images show better handling of moving people. The 4th and 5th are just different crops of the same one and the 6th is that one done with AutoStitch (confused by the moving boat). Note that neither can handle the changing ripples perfectly. 10-13 are examples that show less of a difference. The last two Chicago ones are generally pretty good, but ICE failed to handle the true 360 right and took a notch out of the light pole on the left.