I'm not entirely sure what kind of "component" you mean, but Thumbs Plus is excellent. I've been using it for years and it automatically creates a thumbnail database of every single image on my drives. I'm not sure about image upload since I don't use it for that.
If your only going to be dealing with gif and jpg's then its pretty simple to do in code without the component. Persits have quite a nice one, but its not free iirc.
Thank you for all the answers. I've been working on a Photo Gallery application any trying to find a way to automatically generate thumbnails to save bandwidth on pages where multiple images are shown in a table. Also if I can somehow "measure" a compression ratio/quality on a JPEG, I can have the oportunity to post-process the images to save diskspace and/or bandwidth.
I scanned a lot of such components comparing their properties/methods. Some of them are already installed on the server... In Hotscripts there are a good number of them listed.
Some key features in choosing such a component would be: