The two you mention are vastly different languages.
AppleScript has the advantage of being able to tie into many desktop programs and Apple specific functions. It's also a little on the complicated side but at least the code is very easy to read. It's the only option if you want to call specific info to or from desktop applications, such as iChat or PhotoShop.
Perl is a scripting language that is great for text and data handling and is used for CGI scripts enabling interactive web content. It's the handiest one if you want to whip up a web interface to something. The code is compact, harder to read, but very good fun to program in once you get the hang of it.
Bash and tcsh are great shell-scripting languages for running commands as you would in the Terminal.app. Bash is considered a great introduction to programming as it is simple, linear and reliable. It is unforgiving of Syntax errors though.
You can tie these together. For instance, an AppleScript can use "do script" to call a bash or tcsh script, while a bash or tcsh script might use the osascript command to run an AppleScript. Perl, as well, can call bash, tcsh or AppleScript with a little tweaking, and the "perl" command makes it easy to call a perl script from bash or tcsh.
It essentially comes down to what you want to achieve. If you want a web-page that when you open it shows what iTunes song you have currently playing, you'll need to use Perl to create the page content, and call an AppleScript to retrieve the actual song information from iTunes. On the other hand if you only want to use a few Unix commands and so on, a shell language is the easiest. For learning something just to get the hang of basic programming, I'd recommend bash.