Making an excellent tofu curry is easy. Here, we’ll show you how to put this meal together in about 30 minutes and make the best everyday vegan curry recipe.

Our tofu curry is simple, wholesome, tasty, family-friendly, nutritious, and fulfilling; everyone at the table will take seconds.

It combines protein-packed tofu bites with a creamy, rich, aromatic sauce and your vegetable of choice – ours is cauliflower.

Tofu curry in a white bowl with silver spoon

Dietary Note: This recipe is suitable for a vegetarian, vegan, and gluten-free diet.

This tofu curry recipe is a vegan curry where we use tofu cubes instead of meat. This dish is inspired by the South Asian Cuisines of India and Nepal.

We use spices such as curry powder, turmeric, and black pepper to recreate those warm Indian flavors that make curries irresistible.

We toast the spices with onion, garlic, and ginger. This creates a flavor base that infuses the curry with a subtle, mouth-warming, fresh, and fragrant aroma.

Finally, we simmer the tofu and the spices in a rich sauce of coconut milk, canned tomatoes, and vegetable broth.

This softens the flavors and creates a rich tofu curry with a creamy texture, delicate to the palate.

And by the way, you can make this recipe from scratch in about 30 minutes, in one pot, without pressing the tofu (unless you want to).

Try the curry on basmati rice, Naan bread, or homemade flatbread with fresh cilantro and a squeeze of lemon. It’s an easy, nutritious, and fulfilling family-friendly dinner.

Tofu curry recipe with white rice lemon wedge

Ingredients & Substitutions

Tofu curry ingredient picture

Quantities are in the recipe box at the bottom of the page.

Tofu

Use firm or extra firm tofu for this recipe. You can find it in most grocery stores in the refrigerated section. Softer types like soft or silken tofu will fall apart in the curry as it simmers for about 20 minutes.

Tofu is an excellent meat replacement with incredible health benefits and no scientifically proven downsides (unless you are allergic to soy).

It’s made with coagulated soy milk pressed into blocks. Soy milk is made with ground and soaked soybeans, a legume with impressive nutritional benefits.

And that’s why tofu’s nutritious is out of the charts. 3.5 ounces (100 g) of tofu contains 17 grams of protein, 9 grams of fat, 3 grams of carbs, and minerals such as calcium, manganese, and iron.

The fat is the good kind that is good for our hearts; the protein is made up of all essential amino acids.

Flavor Base

Make a tasty flavor base with chopped onion, grated garlic, and grated ginger, gently fried in a vegetable oil of your choice.

This is at the base of Indian cuisine, adding flavor to this tofu curry.

We recommend extra virgin olive oil or avocado oil because they are healthier. Coconut oil or other vegetable oils work, too.

If you are on an oil-free diet, you can fry the onion in the pan without oil on low heat, stirring often. The natural oils of the onion will come out and prevent the onion from sticking.

Spices

Curry powder, cumin, and black pepper are essential for the most basic curry.

If you, like us, love spices, we recommend adding chili flakes, coriander powder, turmeric powder, and garam masala.

We use them all in our tofu curry and recommend you do so, too.

Fun fact: spices not only add a ton of flavor to the curry. They also contain antioxidants, potent in fighting inflammation, and can help prevent chronic disease.

Vegetable broth

You can use store-bought vegetable stock or make it from scratch at home.

We generally go for store-bought, especially if we want to make this vegan curry for a quick dinner. If you don’t have vegetable broth, use plain water and add more salt.

Tomatoes

We use canned crushed tomatoes. You can also use whole canned peeled tomatoes or very ripe fresh tomatoes chopped into small pieces.

Coconut milk

We prefer full-fat coconut milk, but reduced-fat coconut milk works well too. Coconut milk makes the curry sauce creamy and mellows the flavor of the spices.

It also adds a subtle coconut flavor that is great in curry and, combined with the tomatoes, creates that deep orange color typical of Indian curries.

It’s hard to replace coconut milk in curry. You could use regular plant milk (like soy or oat), but it won’t taste the same. Also, the curry won’t be as creamy without coconut milk.

Alternatively, blend a cup of soaked cashews or almonds with water to get a smooth, creamy liquid. Then, you can add that to the curry instead of the coconut milk.

Vegetables

We often use cauliflower or broccoli for our tofu curry. But many other veggies would be great in this dish.

Try chopped zucchini, green beans, red bell pepper, sweet potatoes, spinach, carrots, and kale.

When you add veggies, you must consider that the tofu curry needs to simmer for about 20 to 30 minutes to get flavourful and creamy.

So if you’re veggies cook faster than 30 minutes, you should consider that. For instance, if you add spinach, they only need 5 minutes. Zucchini will need about 10 minutes.

Salt

A touch of salt helps bring all flavors together. We usually add one teaspoon. However, you can add less, taste, and adjust before serving.

The best salts for cooking are sea salt and kosher salt.

Ingredients for serving

Lemon

A wedge of lemon per portion. Squeeze on top of the curry just before eating.

It adds a touch of freshness and acidity that will boost the flavor of his dish even more. You can replace lemon juice with lime juice.

Cilantro

Fresh cilantro is a perfect flavor match for this tofu curry. We even planted our cilantro plant on our balcony to always have it at hand.

Some people, however, can’t stand the cilantro flavor and think it tastes like soap.

That’s because of a genetic variation of their olfactory-receptor genes, making them taste aldehydes in cilantro, which taste soapy.

If you are one of those people repelled by cilantro, you can use flat-leaf parsley instead.

Rice

Traditionally, basmati rice is the rice of choice for curries. You can replace basmati rice with any other rice variety.

Try whole-grain rice if you want to make this meal more wholesome. If you are not into rice, you can replace rice with naan, flatbread, or cauliflower rice.

tofu curry in a bowl

How to make tofu curry

Prepare the tofu

Start by prepping the tofu. Take it out of its package and pat it dry. Then, you can cut it into 1-inch dice or pull it apart into bite-size pieces with your hands.

diced tofu and pulled tofu

Make the flavor base

Heat the oil in a large pot or Dutch oven. Add a chopped onion and gently sauté it for 3 minutes, then add grated garlic and ginger and fry gently for another minute.

Now, turn the heat low, then add the spices: curry powder, cumin, red pepper flakes, coriander, turmeric powder, black pepper, and salt.

Toast the spices while stirring on low heat for a short minute.

Tip: to make the tofu curry more digestible, cut the garlic cloves lengthwise and remove the core before finely chopping it. Adjust the spiciness by adding more or less red pepper flakes based on your heat tolerance.

Note: if you prefer to make the curry oil-free, you can fry the onion in a dry pan on low heat, moving it around often. The onion will release its natural oils, and you won’t need to add any oil.

spice mix for tofu curry

Let it simmer

Add vegetable stock, crushed tomatoes, coconut milk, the tofu pieces, and your vegetable of choice (we use cauliflower florets here).

Now set the stove to medium-high heat and bring to a simmer.

cauliflower, crushed tomato, and tofu in a skillet

Stir and let simmer for about 20 to 30 minutes until the vegetables are cooked and the curry gets creamy.

If the sauce splatters around, then turn the heat down to medium.

Note: If you add different vegetables, like, for instance, spinach or zucchini, they’ll need to cook less. Let the vegan curry simmer without the veggies for 10 minutes, then add the vegetables.

Tofu curry simmering in a skillet

A couple of minutes before turning the heat off, add the garam masala. Taste and adjust for salt and spices, and you are ready to serve it.

Note: garam masala is optional, but we like to stir it in towards the end to add warmth, sweetness, and floral notes to our tofu curry.

Garam masala is widely used in India and will make your vegan curry more authentic. It’s added at the end to preserve its fragrance and aroma.

Tofu curry in a white bowl with cilantro

Serving suggestions

Serve the tofu curry with naan bread, homemade flatbreadbasmati rice, or whole grain rice with a generous squeeze of lemon juicefreshly chopped cilantro (or flat-leaf parsley), and optionally a spoonful of unsweetened plant-based yogurt.

Tofu curry served with basmati rice and lemon wedges

Tofu curry is a great everyday easy dinner, and other ways of serving it are:

  • Serve with healthy grains and make an easy couscous side; just let it sit for 5 minutes, and your couscous is ready.
  • Serve it with bread like this delicious flatbread or homemade Naan bread; it’d be a great way to sop out all the sauce leftovers!
  • Increase your veggie intake, and serve the curry on cauliflower rice, a fresh, light-calorie side dish.

If you like to add some veggies on the side, try our:

Variations

Vegan curry

vegan curry with rice and lemon wedge

Our vegan curry is simply a tofu curry where the tofu is rendered chewy and super tasty by first seasoning and roasting it in the oven or air-fryer.

This extra step allows the tofu to become even more delicious, and we recommend it if you are serving this recipe to someone who tries tofu for the first time.

Check out our vegan curry recipe.

Red lentil curry

creamy red lentil curry

Red lentil curry is an Indian and Nepalese-inspired recipe reminiscent of South Asian Dahls. They cook fast, making the curry beautifully creamy, nutty, and mildly earthy.

You’ll love this recipe because it’s easty, tasty, and nutritious.

Check out our red lentil curry recipe.

Chickpea curry

Chickpea Curry and basmati rice

If you don’t have cauliflower, lentils, or any other veggies, you can still make a creamy, tasty, and wholesome curry with a can of chickpeas.

Chickpeas are affordable, healthy, and delicious, especially when combined with a rich aromatic curry gravy.

Check out our creamy chickpea curry recipe.

Cauliflower curry

Cauliflower Curry with basmati rice

Another delicious variation of this recipe is one with cauliflower florets and chickpeas. They are delicious together and make this dish nutritious and fulfilling.

Check out our cauliflower curry recipe.

Vegetable curry

Vegetable curry with a silver spoon

This easy and vegetable-packed curry with broccoli, bell pepper, sweet potato, and peas makes a colorful and wholesome dinner. If you are a veggie lover like us, you’ve got to try this one.

Check out our vegetable curry recipe.

Roasted red pepper and eggplant tofu curry

Our favorite variation is tofu curry with red bell pepper and roasted eggplant. Cut 1 large eggplant into small dice and 1 large red bell pepper into strips. Put them on a baking tray and drizzle with 2 tablespoons of olive oil, a pinch of salt, two twists of pepper, and a bit of paprika.

Roast them in a preheated oven at 390F or 200C until soft and slightly charred (about 15 minutes). Now toss them into the curry and simmer for another 10 minutes.

Make it Thai-Inspired

Thai Red curry with rice

Try a Thai red curry paste instead of Indian spices. We lived in Thailand for months and loved Thai curries. Check out our Thai red curry recipe.

A good curry paste should contain lemongrass, garlic, kaffir lime, galangal, red chili, cumin seeds, and cumin powder.

The process is very similar and probably even easier as all the spices are already in the curry paste. You can buy it online, in Asian stores, or in the international section of most supermarkets these days.

  • Sauté the onions in oil like before, add garlic and ginger, and sauté for another 30 seconds, then add the red curry paste (2 to 3 tablespoons). Stir and fry for a minute.
  • Add the veggies (you can choose whatever you like; carrots, green beans, bell peppers, broccoli, cauliflower, zucchini, and eggplants are all excellent options) and the tofu (you can pan-fry the tofu separately beforehand if you like).
  • Pour 1/2 cup vegetable broth and 1 can (15 oz) of coconut milk. Add 1 tablespoon of sugar and 2 tablespoons of soy or tamari sauce.
  • Simmer for 10 – 15 minutes till you reach your desired thickness. Finish with either cilantro (fresh coriander) or Thai Basil. This last one is hard to find, so you can replace it with regular Italian basil). Taste, add salt, and serve on boiled or steamed jasmine rice.
  • Note: do not add any salt to this vegan curry unless necessary. The curry paste and the soy sauce should add enough salt to the dish.

Tips

Should you fry tofu before adding it to the curry?

If you want a tastier tofu, you can fry it before adding it to the curry. Follow our fried tofu recipe and stir it in the curry before serving it.

Our recipe for fried tofu is easy, and you can make it in less than 15 minutes while the curry simmers.

Why we don’t press our tofu?

Pressing and freezing tofu is a Western practice not widespread in Asian countries where tofu is widely used as a staple food.

We avoid pressing tofu because the tofu turns out unpleasantly dry and slightly broken after being pressed.

Want chewier tofu, more similar to chicken?

spiced tofu after baking

The best way to make tofu chewier and tastier is to roast it in the oven or the air fryer.

To do this, preheat the oven to 400°F or 200°C. Break the tofu apart with your hands into bite-size pieces and add it to a baking tray.

Season it with 1 tablespoon of olive oil, 1 tablespoon of soy sauce, 1/2 teaspoon of salt, and 2 twists of black pepper, then bake for 30 minutes.

Stir it in the curry towards the end, and let it simmer for 5 more minutes. To learn more about this, check out our vegan curry recipe.

How do you use frozen tofu in curry?

frozen and thawed tofu cubes on a plate
Frozen and thawed tofu on a plate.

Frozen tofu is theoretically slightly chewier because freezing changes the molecular structure of the tofu.

As the water freezes and ice crystals form, they create tiny holes in the tofu.

In practice, we haven’t noticed much difference in texture, and remembering to cut and freeze the tofu after we come home from groceries seems a cumbersome chore for us.

So we don’t recommend this method.

However, if you’d like to freeze your tofu, remove it from its package, drain it, cut it into dice or slabs, and freeze it.

Let it in the fridge overnight, or thaw in the microwave. Then, pat excess dry water with paper towels and throw it into the curry, as described in the recipe.

Is it worth it? We never do it. It just takes too much thinking and prepping for us. But if you are curious, you should try.

Want an even creamier curry?

Let the curry simmer for over 20 minutes and up to 30 or more.

Just make sure your veggies don’t overcook. If you plan to make a thicker and creamier tofu curry by letting it simmer for longer, add the vegetables a little later.

Questions

Is this tofu curry gluten-free?

Yes. Our tofu curry recipe is gluten-free.

Is this tofu curry Indian?

This tofu curry is certainly Indian-inspired, although we are unsure if this recipe exists in India.

How do you serve tofu curry?

The best way to serve tofu curry is with basmati rice or naan bread.

However, other rice types, like whole grain rice and jasmine rice, work well. You can also serve this vegan curry with homemade flatbread.

How thick should tofu curry be?

It depends on your preference. In some parts of India, curries are thicker, almost like cream or paste; in others, they are thinner, more like a soup.

You can make your curry thicker by reducing the amount of vegetable broth or by cooking the curry for longer.

Storage

Make ahead: Tofu curry is the ultimate recipe to make ahead! It stores well in the fridge for up to 4 days, and its flavor becomes better and better as the spices and the curry sauce infuse the vegetables and the tofu with more flavor.

We usually make a big batch of this recipe and eat it for a quick lunch or dinner several days later.

Refrigerator: Store leftovers in the fridge for up to 4 days, best in an airtight container. Reheat in a pot on the stovetop, adding a dash of water, or in the microwave.

Freezer: Tofu curry is also suitable for freezing. The texture of the tofu will change slightly, becoming chewier, but that’s normal. To freeze, let the vegan curry cool down completely. Then, transfer it into a freezer-friendly container and freeze for up to 3 months.

Thaw: defrost it in the refrigerator (it’ll take about half a day), in the microwave, or in a pot on the stovetop. In this case, though, the heat should be very low.

More curry ideas

If you love Asian-inspired meals, get fresh dinner inspiration from these curry dishes:

  • Aloo gobi (cauliflower, potato, parsley, curry, turmeric, red pepper flakes, etc.)
  • Tofu butter chicken (tofu, cumin, coriander, ginger, non-dairy yogurt, etc.)
  • Sweet potato curry (coconut milk, curry, garlic, onion, sweet potato, etc.)
  • Chana masala (tomato, chickpeas, onion, garlic, ginger, curry, etc.)

More tofu recipes

For more easy tofu recipes, take a look at these reader favorites:

For many more tofu ideas, check out our tofu category page.

tofu curry with white rice and a spoon

Tofu Curry

By: Nico Pallotta
5 from 36 votes
Making an excellent tofu curry is easy. Here, we’ll show you how to put this meal together in about 30 minutes and make the best everyday vegan curry recipe.
Our tofu curry is simple, wholesome, tasty, family-friendly, nutritious, and fulfilling; everyone at the table will take seconds.
Prep Time: 10 minutes
Cook Time: 25 minutes
Total Time: 35 minutes
Servings: 4 people
Course: Main Course
Cuisine: Asian, International

Ingredients

  • 2 tablespoons olive oil
  • 1 medium onion chopped
  • 3 cloves garlic grated
  • 1 inch ginger grated
  • 2 teaspoons curry powder
  • 1 teaspoon turmeric powder
  • 1 teaspoon cumin
  • 1 teaspoon coriander
  • ¼ teaspoon red pepper flakes
  • 2 cups vegetable stock or more for a thinner curry
  • 14 ounces tofu firm or extra firm
  • 12 ounces cauliflower or green beens, red pepper, broccoli, sweet potato, or other
  • 1 can (15-ounce) crushed tomatoes
  • 1 can (14-ounce) coconut milk
  • 1 teaspoon salt
  • 2 twists black pepper
  • 1 teaspoon garam masala optional, to add at the end

Serving Suggestions

  • 4 wedges lemon
  • 1 handful cilantro or flat leaf parsley
  • 1 – 2 cups basmati rice or naan
  • 4 tablespoons unsweetened dairy-free yogurt optional, a dollop on top

Instructions 

  • Start by prepping 14 ounces tofu. Take it out of its package, pat it dry, then you can cut it into 1-inch dice or pull it apart into bite-size pieces with your hands.
    diced tofu and pulled tofu
  • Heat 2 tablespoons olive oil in a large pot, add 1 medium onion (chopped) and fry it for 3 minutes. Add 3 cloves garlic and 1 inch ginger (both grated) and fry for 1 more minute.
    Now add in 2 teaspoons curry powder, 1 teaspoon turmeric powder, 1 teaspoon cumin, 1 teaspoon coriander, and ¼ teaspoon red pepper flakes and toast for 1 minute.
    flavor base for the tofu cyrry
  • Add 2 cups vegetable stock, the tofu pieces, 12 ounces cauliflower florets, 1 can (15-ounce) crushed tomatoes, 1 can (14-ounce) coconut milk, and season with 1 teaspoon salt and 2 twists black pepper.
    cauliflower, crushed tomato, and tofu in a skillet
  • Stir and let simmer for about 20 to 30 minutes until the vegetables are cooked and the curry gets creamy.
    Tofu curry simmering in a skillet
  • A couple of minutes before turning the heat off, add 1 teaspoon garam masala. Taste and adjust for salt and spices, and you are ready to serve it.
    tofu curry in a bowl
  • Serve the tofu curry with naan bread or on basmati rice with a generous squeeze of lemon juice, freshly chopped cilantro, and optionally a spoonful of unsweetened plant-based yogurt.
    Tofu curry with white rice

Notes

Nutritional information is an estimate for one large serving of tofu curry out of four servings without the rice.
STORAGE
Make ahead: Tofu curry is the ultimate recipe to make ahead! It stores well in the fridge for up to 4 days, and its flavor becomes better and better as the spices and the curry sauce infuse the vegetables and the tofu with more flavor.
We usually make a big batch of this recipe and eat it for a quick lunch or dinner several days later.
Refrigerator: Store leftovers in the fridge for up to 4 days, best in an airtight container. Reheat in a pot on the stovetop, adding a dash of water, or in the microwave.
Freezer: Tofu curry is also suitable for freezing. The texture of the tofu will change slightly, becoming chewier, but that’s normal. To freeze, let the vegan curry cool down completely. Then, transfer it into a freezer-friendly container and freeze for up to 3 months.
Thaw: defrost it in the refrigerator (it’ll take about half a day), in the microwave, or in a pot on the stovetop. In this case, though, the heat should be very low.
ALSO ON THIS PAGE

Nutrition

Calories: 428kcal, Carbohydrates: 24g, Protein: 15g, Fat: 34g, Saturated Fat: 21g, Polyunsaturated Fat: 4g, Monounsaturated Fat: 7g, Trans Fat: 0g, Cholesterol: 0mg, Potassium: 872mg, Dietary Fiber: 6g, Sugar: 9g, Vitamin A: 552IU, Vitamin B6: 0.4mg, Vitamin C: 54mg, Vitamin E: 3mg, Vitamin K: 25µg, Calcium: 219mg, Folate: 83µg, Iron: 7mg, Manganese: 1mg, Magnesium: 89mg, Zinc: 1mg
Tried this recipe? Leave a comment below or mention @theplantbasedschool on Instagram. We are also on Facebook, Pinterest, YouTube, and TikTok.

If you liked this tofu curry recipe, you might also enjoy:


Nico and Louise in the kitchen

Hi! We are Nico & Louise

Welcome to The Plant-Based School, a food blog with easy, tasty, and wholesome recipes.

Our aim is to help you and your family eat more veggies through delicious recipes with simple ingredients.

Easy right?

Leave a comment

Your email address will not be published. Required fields are marked *

Recipe Rating




18 Comments

  1. Liked it very much , will make it a tad hotter next time , first time I’ve tried or cooked tofu, so pleasantly surprised- thanks 😊

  2. 5 stars
    Wow! I was searching for a recipe to make that would use the ingredients I had at home already and that would be quick. I followed this recipe to the T and it turned out DELICIOUS. Even my picky kids were raving about it…and I kind of still can’t believe they were so excited for a recipe with tofu and cauliflower as the stars of the show! Thank you! Look forward to trying more of your recipes! 🙂

    1. YAY Kelly, that’s just fantastic! Who knew that tofu and cauliflower could create such a reaction 🎉

      Thank you for your kind feedback, and for your rating – we really appreciate it.

      All the best, Louise

  3. 5 stars
    This is AMAZING!! My family loved it. I followed the recipe and used cauliflower. I served it on brown rice, and the lemon juice added a lot of flavor. I will definitely be making this again and again!

    1. YAY, that’s amazing Jan.

      I’m so happy they liked the curry, such great news!

      Thank you for taking the time to leave a rating and a comment 🙂

      Kindest,

      Louise

  4. 5 stars
    So easy so good. I made your red lentil curry too-both are fabulous. Thank you for the recipe and excellent instructions.

    1. Thanks for your message Anna. We are so happy you liked the recipes and the instructions 🙂
      Hope you have a wonderful day!
      Cheers,
      nico

  5. Made with tomato sauce since I have a picky eater who doesn’t like tomato chunks. What’s the best way to thicken it? Flavor is spot on!

    1. Hi Sue,
      Let it simmer for 10-15 minutes on low heat and without a lid to make the curry thicker. Just stir it every 5 minutes to avoid the veggies from burning and remove it from the heat whenever you’re happy with the creaminess level. I hope that helps.
      Kindest,
      Louise

  6. 5 stars
    Made the recipe exactly as written, using every optional ingredient. Oh My Goodness. We almost licked our bowls.

    1. Cindy, I’m so happy you enjoyed the curry! Ahaha, next time you can serve it with Naan bread to sop up the leftovers 😉 Have a great weekend. Cheers, Nico

  7. 5 stars
    So glad I found this recipe! My son has been asking for something with curry for so long. I finally gave in and found this. Wow, such great flavor and the directions were perfect. This is going to be a part of our rotation for sure! Thank you for the recipe and all the helpful info!

    1. Hi Courtney, thanks very much for taking the time to leave a comment here. I’m really happy you liked the recipe and the directions! Have a great day, cheers, Nico

    1. Hi Donna, I’m delighted to hear you had a good first taste experience with both ingredients 🙂 Thanks so much for coming back to comment, and have a great rest of your day! Cheers, Nico