I'm looking to find a free program that allows me to edit my images.
The ones I have used so far are very limited, so if you have any ideas please let me know.
XnView. It is good because it is also a photo organizer, has batch editing, scripts etc. Regularly updated.
I want to put in a a plug for picasa. I know it's simple, and doesn't adequately "respect the RAW," but it gives me good results for web-based viewing or smallish snapshots (I'm not sure I would want to blow up the prints, but I haven't tried it).
What I really like about Picasa is the ease of use: the controls help you see the changes as you go, and give you a good sense of what they do. Just for making your pictures look better on screen, it does a great job.
Darktable is a very powerful photo processing tool. You cannot "paint" as with Gimp/Photoshop, but you can apply many kinds of filters in a non-destructive way to your photos. The description from their website expresses the features best:
darktable is an open source photography workflow application and RAW developer. A virtual lighttable and darkroom for photographers. It manages your digital negatives in a database, lets you view them through a zoomable lighttable and enables you to develop raw images and enhance them.
GIMP is free, and available on pretty much any platform, but in the case that you're on a Mac, and willing to fork over 15 USD, Pixelmator is one of the cheapest programs that can handle just about any image you throw at it, anc you don't have to convert your RAW files before editing them.
I have to agree with everything that's been said so far. I've been using Picasa considerably and find it to be great for working with simple edits and jpeg images. Lately I've been using a demo version of Lightroom 3 to see if it might fit my needs better (but it's expensive-ish). Generally new Nikon and Canon cameras come with their own software, like View NX http://www.nikonusa.com/Find-Your-Nikon/Product/Imaging-Software/NVNX/ViewNX.html for Nikon. Canon also seems to have lots of free tools for viewing and tweaking their RAW format.
I use GIMP and ImageJ. ImageJ is a free program that allows you to more easily do lower level manipulations on the individual grey values of the pixels than "higher level tools" such as GIMP.