Angelina,
You gain weight only when you overeat something no matter if it's protein, fat, or carbs and for all your meals...
You should have some protein (whether it be fish, meat, chicken, protein bars or shakes), healthy carbs like fiber, fruits & veggies and healthy fats from nuts & fish
As far as weight loss goes there really is no 'best time' to use protein but...
If you're trying to build muscle - then the best time to take protein is after a weight training or toning workout to help your muscles recover and grow faster.