Personally, I started weight lifting about 3 years ago in my senior year or High School. I got addicted. I took a weight lifting class, which was one of those classes where about 4 of us guys actually worked out, another couple guys sat around and never did anything, and about 6 females who never did anything. I LOVED it. I started off by going to body building forums and getting a lot of good information. I was consuming whey protein, creatine, and eating a lot to gain weight. I was underweight, because I was 6 foot with only 140 lbs of weight.
I have lifted weights on and off throughout the past few years. During my senior year of high school, I gained about 25 pounds and ended the year weighing in at 165. Keep in mind i've been 6 foot ever since then. I lost all of that weight because I quit lifting weights, and eating a lot. I was eating 3500+ calories a day, and consuming at least 160 grams of protein a day. Anyway, I started back up with massive consistency about 6 months ago (a little bit before Christmas of 2008) with full force. I was back down to a depressing 140 lbs, and had low self-esteem/confidence. As a sophomore in College (at the time), I needed any confidence boosters I could use.
So this time, instead of doing my own FLAWED workout plan, I started following the beginners plan called Rippetoes, which gets you familiar with basic bar bell workouts such as squats and bench press. Then I got bored with such an easy program (3 sets of 5 reps) after a month or two, and found Billstar5x5 program and have been using it ever since. It actually mixes things up so that you confuse, or "shock" your muscles into growing more and more until you plateau. The program consists of lifting 3 times per week, and for example, Monday i'll do 5x5 of squat, bench, rows, and sit-ups. Then on Friday i'll do 4x5 of the same workouts, do a 1x5 that is 2.5% higher than my previous highest weight, then do a 1x8 of the fourth set of the 4x5. Also, any 4x5 or 5x5 workout is setup so that I continuously add weight for each set. Usually I will add about 5 lbs total for each set until I reach the 4th of 5th set. Then I should be to where I can barely finish my last rep, forcing my muscles to grow. I am now 175 lbs, for a total of 35 pounds gained in the last 6 months. HUGE boost in my confidence. I plan on bulking up to ~200 and then cutting 10 or 15 pounds. I'll do what I feel at the time.
The most important thing, in my opinion, about body building and gaining muscle fast is to be consistent with your workouts and don't get lazy. Once you start learning how programs work and your muscles grow with the aid of supplements such as Multi-vitamins and whey protein, you are on the right path. I take BCAA's (branched chain amino acids: which are the basic building blocks of muscle growth), Creatine (allows your muscles to store more ATP and recover a lot quicker), multi-vitamins, whey protein (at least 170 grams/day), and fish/flax seed oils for my omega 3 fatty acids (which are for your eyes, heart, and blood flow). I am "all natural" in that I don't take any pro-hormones or HGH, steroids, or anything illegal.