I'm about ready to dual boot this machine with some form of slackware. By far, the best way to learn is to pick a stable distro (Red Hat), and try your best to get every peripheral (sp) you own to work on it. You'll learn compiling, editing config files, working around the directory, working in the shell, etc. Once you've exausted all your hardware, start building a server with web, ftp, etc. Just have fun. Explore.

well, the problem with picking redhat and learning is that every peripheral is already working i suggest getting a slackware system up and running, its a challenge for the noobie, and it also gives you a great deal of satisfaction when you make something that works.
<bad advice> after you make it work go in and recompile your kernel adding and taking out support for hardware you've never heard of, then try and get your system back up and running because you forgot that term paper on it.....</bad advice>

The answer depends on how much you already know. If you're starting from scratch, do yourself a favor and install a distribution that will configure everything for you. The Linux console can be a little bit complicated to learn (and at some point, no matter how exciting your distribution's graphical apps are, you will eventually have to use the console). If you already know how to get around a shell, Debian is a great way to learn a lot more about maintaining a system without banging your head against the table every time you install another application because of dependencies. Like the other replies said, Redhat is probably the easiest way to go if you're jumping in for the first time.

I'm in the same boat as phreakblaze. I know nothing of Linux. I want to have a dual boot system but I have no room for Linux anymore. Running Knoppix. The only stuff I can do in the shell is the stuff that's the same as DOS (which I know fairly well). I can't even get eDonkey running under Knoppix.