With its nutty flavor, and medley of warm spices, this hearty cabbage curry is an incredibly comforting dish that is sure to please everyone. Vegan and gluten-free as written, this Indian style cabbage curry recipe is made in one pot, so you don't even have to worry about dishes!

This post contains helpful tips and tricks! If you're in a rush, please use the "Jump to Recipe" below!
This post might contain affiliate links. If you click on those and make a purchase, I earn a small commission at no extra cost to you. As an Amazon Associate I earn from qualifying purchases.
💭 Why you'll love this recipe
- Easy, one pot, weeknight dinner. This cabbage curry recipe needs a few simple ingredients and comes together in one pot. Throw everything in and let it simmer away until it's cooked through. Talk about an easy weeknight dinner!
- Vegan and gluten-free. This cabbage curry is vegan and gluten-free as written (like my Ethiopian cabbage recipe), but you won't even realize it. Perfect for vegans, vegetarians and meat eaters alike!
- Healthy and nutritious. This dish is full of healthy ingredients like cabbage, onions, and coconut milk packed with vitamins and minerals.
- Packed with flavors. It's not just about nutrition. This cabbage curry is a clear winner when it comes to complex flavors with simple ingredients. Warming spices, creamy and sweet coconut milk, savory aromatics like garlic and onions and crunchy cabbage - what more can you ask for?
- Super versatile and easily customizable. You can swap coconut milk for cream (or heavy cream if you consume dairy) for a more indulgent flavor. You can add more veggies or protein like chickpeas or tofu to bulk up the dish and make it even more nutritious!
📋 Ingredients and notes
To make this cabbage curry recipe, you'll need avocado oil, cumin seeds, mustard seeds, onion, garlic, grated ginger or ginger paste, tomatoes, red chili powder, turmeric powder, garam masala, green cabbage, fresh or frozen green peas, cilantro, salt, and coconut milk.
Note: Indian cabbage curry is typically served dry and the cabbage is pan fried to give it more texture. You can skip the coconut milk if going this route.
Notes and Variations
- North Indian vs. South Indian cabbage curry. South Indian cabbage curry tends to be dry, and uses whole mustard seeds as well as certain lentils (e.g., urad dal) to provide a more nutty flavor. It typically doesn't have tomatoes. My recipe is more inspired by the North Indian cabbage sabzi recipe.
- Make it oil-free. If you want to go oil-free, I suggest broth to sauté the vegetables instead.
- Coconut milk. You can use a full-fat version or low-fat coconut milk or even coconut cream if you want something more indulgent.
- Tomatoes. You can chop up two medium-sized tomatoes or use canned diced tomatoes (typically a 14.5 oz, with extra water drained works well).
- Swap cilantro with other herbs. If you're one of those folks who taste soap when they eat cilantro, scallions, chives, and parsley all work and add just the right amount of zest to liven up this dish!
- Substitute spices. You can use curry powder to add an earthy note. You can also use ginger garlic paste (instead of fresh garlic and ginger) - this is readily available in Indian grocery stores.
- Customize to your liking. For a little extra kick, add a few drops of your favorite hot sauce or for an earthy sweetness, add a tablespoon or two of honey or maple syrup.
📖 How to Make The Best Cabbage Curry
Clean the cabbage thoroughly, and chop it into small sections. First, remove the outer leaves and cut them into four pieces. Then, slice each fourth into small chunks or chop/shred. Set aside.
Note: I suggest slicing the cabbage into small chunks (not shredded cabbage or strips, like you might for slaw). This adds more texture to the cabbage curry.
Add avocado oil to a large pan or wok and heat on medium heat. When hot, add cumin seeds and mustard seeds (optional) and sauté until they splatter.
Add chopped onions and sauté for 3 minutes. Add minced garlic and ginger and fry for 30 seconds until fragrant.
Take care not to burn the garlic. Add tomatoes, green peas, turmeric, garam masala, and red chili powder, and sauté until the tomatoes soften (about 3 minutes). You don't need to thaw frozen green peas.
Add the chopped cabbage and salt and toss so the spices coat the cabbage evenly and then fry until it's soft (about 5 minutes). Check to make sure the cabbage is soft but not mushy, and not hard or crunchy!
If you want a more creamy curry, add coconut milk, and stir to combine well. Take off the heat, garnish with cilantro and serve hot, ideally with rice!
👩🏽🍳Top Tips for Making the Best Cabbage Curry
Cabbage curry is really easy to make, but following these simple tips will make sure you get a delicious and hearty curry each time.
- Wash and drain cabbage thoroughly and cook on medium-high heat. I like washing my cabbage thoroughly, but make sure you drain all excess water before cooking. Make sure to also not cook cabbage on low heat. Otherwise, cabbage can get mushy!
- Don’t overcook the cabbage. Add cabbage to the pan and let it cook until it starts to soften but still retains some crunchiness! Overcooking the cabbage can make it mushy and lose texture.
- Adjust spices to your desired level. You can control how spicy your cabbage curry is by adjusting the amount of chili powder and spices used. I use Kashmiri red chili, but you can swap with paprika or cayenne to add a touch of heat but not make it too spicy.
- Garnish with fresh herbs. As soon as your curry is finished simmering, turn off the heat and add fresh herbs like cilantro for color and additional flavor.
- Make it even faster by using pre-cut slaw. Though I like chunky pieces of cabbage in this curry, occasionally, to speed things up, I'll buy pre-cut slaw mix and use that instead. Just make sure it's not seasoned beforehand!
- Create layers of flavor. First, brown onions and garlic. Then cook the vegetables (other than cabbage) with warm spices. Finally, add cabbage, and finish with coconut milk or cream to make your curry rich and creamy!
👩🏽🍳Troubleshooting FAQs
Yes! You never know if there's dirt, especially in the folds between the outer leaves. Wash the cabbage and make sure to pat the cabbage dry after chopping to ensure it doesn't retain moisture and turn soggy!
Sadly, yes. Overcooking results in a mushy texture, so it's a good idea to keep an eye on the time. Use medium-high heat and cook until the cabbage is cooked but still a bit crunchy for the perfect texture in your curry.
Yes, you can use purple cabbage, but just know that the resulting color of the curry will be different! Savoy cabbage works great in the recipe as well.
🍴 Serving and storage suggestions
Store this cabbage curry in an airtight container in the fridge for 2-4 days. You can also portion and store it in the freezer for up to 3 months.
When ready to be served just reheat the dish in a pan over medium heat or in the microwave until it is heated.
For optimal flavor, serve this cabbage curry with a generous sprinkle of cilantro alongside some homemade naan, other flatbreads or my favorite, cumin rice.
If you have a boatload of cabbage, check out these other recipes:
Or check out this amazing list of 50+ vegan and vegetarian cabbage recipes!
Did you make this recipe?! ⭐⭐⭐⭐⭐
Please leave a comment and a star rating and let me know how it went! We love hearing from you, thank you so much
📖 Recipe
Cabbage Curry
Ingredients
- 1 tablespoon avocado oil
- ½ teaspoon cumin seeds
- ½ teaspoon mustard seeds, optional
- 1 onion, diced, medium size
- 1 teaspoon minced garlic
- ½ teaspoon ginger paste
- 2 tomatoes, diced
- ½ teaspoon red chili powder
- ½ teaspoon turmeric
- ½ teaspoon garam masala
- 1 lb cabbage, medium sized head
- ½ cup peas
- 2 tablespoons cilantro, chopped, for garnish
- 1 teaspoon salt, adjust to taste
- 1 cup coconut milk, optional
Instructions
- Wash and clean the cabbage, then dry thoroughly. Remove the outer leaves, chop into small sections, and set aside.
- Add avocado oil to a large pan or wok and heat on medium-heat. When hot, add cumin seeds and mustard seeds (optional) and sauté until they splatter.
- Add chopped onions and sauté for 3 minutes. Add minced garlic and ginger and fry for 30 seconds until fragrant. Take care not to burn the garlic.
- Add tomatoes, peas, turmeric, garam masala, and red chili powder, and sauté until the tomatoes soften (about 3 minutes).
- Add the chopped cabbage and salt and toss so the spices coat the cabbage evenly, and then fry until it's soft (about 5 minutes). Check to make sure the cabbage is soft but not mushy, and not hard or crunchy!
- If you want a more creamy curry, add coconut milk at this stage, and stir to combine well.
- Take off the heat, garnish with cilantro and serve hot, ideally with rice!
Notes
- Clean the cabbage: To clean cabbage, you can remove the outer leaves and place it in a bowl of hot (but not boiling water) for 1-2 minutes. Just washing also works.
- Make it oil-free. I use avocado oil in this recipe, but you can skip this by using water or vegetable broth to sauté the onions at the beginning.
- Use pre-cut slaw. I like chunky pieces of cabbage in this curry, but you can speed things up by using pre-cut slaw mix. Just make sure it's not seasoned beforehand.
- Don't overcook cabbage: Cabbage tends to sweat when cooked, so make sure that you're checking for the water released by cabbage. You can turn up the heat if you want a more dry curry, or add coconut milk for a creamy, indulgent curry.
- Customize to your liking. Add a splash of hot sauce at the end for a spicier curry, or a touch of honey or maple syrup for a bit of sweetness. Switch up the herbs if you wish (or dislike cilantro).
It never occurred to me to make cabbage the star of a curry dish but this was such a delicious veg meal and a great way to use up an entire head of cabbage which is always a task!
It's a dish that reminds me of home-cooked meals paired with a steaming bowl of rice. The cabbage curry was a twist that i didn't expect. Really delicious!