Well, if you want the least expensive options out there,
Audacity would be a good starting point. It has a lot of features that used to be found only in really expensive products... such as the ability to perform pitch shifts without changing the playback speed of the overall sound.
Another option, at least for the Mac-using crowd, is to use Garageband as a basic track recorder and mess with all the real-time effects it has to offer. Using varying combinations of these effects, you can create some pretty unusual sounds and voices.
Keep in mind though, that if you are using your own voice for more than one character, you'll probably need to practice techniques to alter your speech patterns (accents, rate, clarity, etc...). This actually isn't as easy as it sounds and could require years of practice before you get really good at it... yet this is how voice actors like Billy West and Frank Welker have gotten where they are today.
Oddly enough, learning how to sing (as in, properly) may actually prove useful for voice training, since it often requires you to be aware of the various muscles in your body needed to generate various sounds.