In my experience, the main reason some guys don't see any gains is that they aren't focused on bodybuilding but on "working out." Simply showing up at the gym is a good start, but it won't get you to your goals. And you have to have goals.
But be realistic. If you want to look like a superhero, you won't succeed. The guys you see in the magazines--even the fitness magazines--are using some kind of chemical enhancement. Yeah, the stuff works, but it's expensive and not easy to obtain.
Building solid muscle doesn't require a PhD. But you do have to be smart about it.
I have seen too many young guys over-training. They figure if they work arms once a week, then twice is better. OMFG. NO!
First, decide how much time you can afford to be in the gym. If you can do it three times a week, fine. Then try working arms one day, chest and back on a second day and legs on a third day--but every other day, not consecutively. Try three exercises for bi's and three for tri's--three sets of 6-8 reps for each exercise and with good form. But don't exceed an hour. It might take some adjusting.
Three exercises for back and three for chest. Three sets of 6-8 reps on each exercise. And rest for at least a minute between sets. Watch the clock if necessary. Always use proper form, even if it means dropping down in the weight you are handling. If you swing the weights, you won't make any progress.
Same stuff for legs.
Try this routine for a couple of months. Eat good food in smaller portions six times a day, or 5 if six can't fit into your schedule. A chicken breast and some rice is a meal. A pint of yogurt and some string cheese is also a meal.
Keep a jar of peanut butter handy and eat spoonfuls throughout the day if you want.
Try to avoid all the designer supplements. They're expensive and aren't all that healthy.
Get plenty of sleep. And, above all, don't become a slave to your workouts. If they begin to feel like work and not fun, pull back. And once you're making progress, focus on someone at your gym who has a physique you admire and ask for some tips. If the guy is genuine, he'll be happy to offer advice. If he's a jerk, move on.