Gaining weight in a healthy way means eating more calories than you burn, mostly from nutritious foods rather than junk food. Healthy high-calorie foods help you gain muscle and strength, not just fat. Here are 13 of the best, plus a simple meal plan.
Quick answer: The best healthy foods for weight gain are whole milk, paneer and cheese, nuts and peanut butter, eggs, rice, sweet potatoes, avocado, red meat, fatty fish, curd, whole grain bread and homemade protein smoothies. Eat about 300 to 500 extra calories a day and do strength training.
Free tool: Not sure how many calories you need? Use our calorie calculator to find your daily target in seconds.
Free tool: Want to know exactly how much protein you need? Use our protein calculator to get your daily target in seconds.
Free tool: Check whether you’re in a healthy weight range with our BMI calculator.
Why Choose Healthy High-Calorie Foods?
- More muscle, less fat: Protein-rich foods plus strength training help you gain muscle.
- Better health: Nutritious foods give you vitamins and minerals, not just empty calories.
- Steady energy: Whole foods keep your energy stable throughout the day.
13 Healthy High-Calorie Foods
1. Cheese and Paneer

Rich in protein, fat and calcium. Add paneer to parathas, curries and sandwiches.
Approx. per 100 g: paneer about 260 to 320 kcal
2. Sweet Potatoes

A healthy source of carbs and vitamin A.
Approx. per 100 g: about 86 kcal
3. Rice

Easy to eat in larger portions. Pair with dal, curd or chicken.
Approx. per 100 g: cooked: about 130 kcal
4. Whole Milk

A simple way to add calories and protein. One glass gives about 150 kcal.
Approx. per 100 g: about 61 kcal per 100 ml
5. Nuts

Very calorie-dense. A small handful gives about 170 to 200 kcal.
Approx. per 100 g: almonds about 580 kcal
6. Red Meat

Provides protein, iron, zinc and vitamin B12. Choose leaner cuts.
Approx. per 100 g: lean mutton or beef cooked: about 200 to 250 kcal
7. Avocado

Packed with healthy fats.
Approx. per 100 g: about 160 kcal
8. Homemade Protein Smoothies

Blend milk, banana, oats, peanut butter and protein for an easy 500 to 700 kcal.
9. Protein Bars

Convenient, but check labels for sugar. Choose bars with at least 10 g protein.
10. Whole Grain Bread

Easy to add to meals with eggs, peanut butter or paneer.
Approx. per 100 g: about 250 kcal
11. Whole Eggs

High-quality protein and healthy fats. 2 to 3 eggs make a filling breakfast.
Approx. per 100 g: about 143 kcal
12. Fatty Fish

Salmon, mackerel and sardines give protein and omega-3 fats.
Approx. per 100 g: salmon about 208 kcal
13. Full-Fat Yogurt and Curd

Adds protein and calories. Top with fruit, nuts and honey.
Approx. per 100 g: about 60 to 100 kcal
Sample Indian Weight Gain Meal Plan
| Meal | What to eat |
|---|---|
| Breakfast | 3 eggs or paneer bhurji, 2 whole wheat parathas, a glass of whole milk |
| Mid-morning | Banana peanut butter smoothie |
| Lunch | Rice, dal, chicken or rajma curry, vegetables, curd |
| Evening snack | Handful of nuts and dates, or a paneer sandwich |
| Dinner | Roti, fish or paneer curry, vegetables, a bowl of curd |
| Before bed | Glass of milk or Greek yogurt |
Tips for Healthy Weight Gain
- Eat every 3 to 4 hours instead of forcing very large meals.
- Include protein in every meal. Active people building muscle are often advised to aim for about 1.4 to 2 g per kg of body weight per day, according to the International Society of Sports Nutrition.
- Lift weights 3 to 4 times a week so the extra calories go towards muscle.
- Track your weight weekly and aim for about 0.25 to 0.5 kg gain per week.
Calorie values are approximate per 100 g unless stated.
Frequently Asked Questions
What is the fastest healthy way to gain weight?
Eat about 300 to 500 extra calories a day from nutritious foods, include protein at every meal, and do strength training. Faster gain usually means more fat.
Is junk food okay for gaining weight?
It adds calories, but too much can harm your health. Focus on nutritious foods and enjoy treats occasionally.
Do I need supplements to gain weight?
No. Real food is enough. Protein powder can be convenient if you struggle to reach your protein needs.
The Bottom Line
To gain weight the healthy way, eat more nutritious, calorie-dense foods like milk, paneer, eggs, nuts, rice, fish and smoothies, include protein in every meal, and lift weights regularly. Gain slowly and steadily for the best mix of muscle and minimal fat.
This article is for general information only. If you have been losing weight without trying, or you are underweight because of a medical condition, please see a doctor.
Sources
- International Society of Sports Nutrition position stand: protein and exercise (2017)
- NHS: The Eatwell Guide
