I'll fill in a little more...
The basic toxic component of fish waste and respiration is ammonia. A biofilter must be established to break down the ammonia. Once these bacteria start to become established, they break down the ammonia into nitrIte. Nitrite is less toxic, but still needs to be removed from the water, so that's where a second type of bacteria come in. As this next type is established, the nitrite is converted into nitrAte which is harmless except in large concentrations (most consider less than 40 ppm (parts per million-normal scale for most test kits) nitrate to be acceptable, some say 20). From here, nitrate is removed mainly through water changes although having live plants will remove some.
As far as the actual cycling process, ammonia can be added by cycling with a few hardy fish, but I prefer to cycle without fish. I start by getting some "pure ammonia" from a hardware store (has to contain nothing but ammonia and water). I add small amounts and test the water until it is at 2-3 ppm. After several days the ammonia should start to drop. It will eventually hit zero, but you need to keep adding ammonia to keep the ammonia at around 1 ppm to keep the bacteria alive. As this ammonia disappears, the nitrites will spike and eventually they will drop as well. When you reach the point where you can add ammonia to 1 ppm and both the ammonia and resultant nitrite are gone in a matter of several hours, you are ready for fish. At this point, do a 30-50% water change to take out the nitrate and add some hardy fish soon after. This whole process takes 4-6 weeks generally, but if you have a source of filter media from a healthy, cycled tank, adding it to your own filter can speed up the process considerably (but be careful not to get the ammonia much over about 2 ppm or the bacteria can actually be killed). For some it may seem like a long time to wait before putting fish in the tank, but it will be much easier on the inhabitants.