Its all about calories. If you ate 5000 calories of lettuce a day you'd gain weight. More weight than if you had 1500 of butter. Mind you you'd be dealthy sick
But if you wanna gain, chances are you wanna gain muscle and gain weight healthily (so no pigging out on krispy kremes!!). So more protein (coupled with exercise, such as weights training) is good.
If you have trouble reaching your daily cals, try things like -
Cal dense food - rice, potatoes, bread as staples, natural dried fruit - its a heck of a lot easier to eat 100 cals of rasisins than it is to eat 100 cal of grapes, if you are full. Nuts too, tho watch not too much and try and get raw unsalted ones.
Add skim milk poweder to your milk or anything you can hide it in
Try drinking juice instead of water. Stick to the pulpy, no added sugar kind.
Sure you can stuff your face full of cake and thats easy (unless you're alregic) but you may get health problems down the track,