One of the best tips I can give anyone when looking to gain results is to focus on one goal at a time. I hear people say they want to get 'Big and Lean' in a short space of time, and that just isn't realistic. By aiming for one goal at a time you will get much more out of what you are trying to achieve.
As I personally started out skinny, for me to gain size I need to run a bulking plan. This is a high calorie, healthy diet along with a well-structured strength & hypertrophy weight training plan. Doing this, I pack on as much lean mass as possible while keeping an eye on body fat and making sure it stays at a reasonable level. Once finished the plan, having reached a plateau with my weight gain I move into a cutting phase, where my aim is to hold as much muscle mass as possible while burning fat. For this I use my unique carb cycle along with a mixture of styles of weights and cardio training.
It really comes down to where you are with your current condition and what goals you are out to reach. If you are leaner and looking for mass, then I believe it's best to run a bulking plan and if you are bigger and looking to cut down and gain lean muscle then cutting is the way forward. It's also about keeping your training entertaining, by mixing it up, setting and aiming for new goals keeps you driven for more.