Get ready to have your tastebuds tickled! Inspired by a traditional fish curry, this Sri Lankan-style tofu curry is full-bodied and spicy with a drool-inducing kick of sourness. Plus, it's ready in 30-minutes or less. Bonus.

Jump to:
Why This Tofu Curry Works
I hope you love this curry as much as I do. It's lighter than my chickpea and spinach curry and zestier than mushroom masala but it's as full bodied and tasty as any curry I've tried. It has its own attitude and it's all about the zing.
If you love curry and you're looking for something fresh with punch-you-in-the-face flavour, I think this one might become a favourite.
Convinced? Excellent. Now, let's make this zingy tofu curry in under 30-minutes.
Ingredients & Substitutions
For the Spice Mix
It ain't a curry without spices and this tofu curry has a few. Most you can get at your local supermarket, but you may have to hunt down the curry leaves at an Asian grocer.
For the Curry
Tofu. Use firm tofu. If you are not simpatico with soy, I've made a jackfruit curry and banana blossom curry with this sauce and both were A-mazing. You could also make this a chickpea curry.
French shallots. Or a Spanish onion in a pinch.
Ginger and garlic. Always.
Tamarind paste. Tamarind paste is made from the edible fruit of the tamarind tree. It's both sweet and sour and can be found as a tamarind paste or tamarind concentrate. For this recipe, you can use tamarind paste or concentrate without any issues, however, it's a good idea to add a little and taste as you go. The flavour can be stronger or weaker depending on the brand.
Tamarind has a unique taste, so it's a touch tricky to find a substitute. A tablespoon of brown sugar mixed with the juice of a lime is the closest I've come, or add a touch of pomegranate molasses.
Curry leaves. I first started cooking with curry leaves after I found Hetty McKinnon's whole roasted cauliflower with turmeric and coconut sauce recipe. Now I'm hooked.
Curry leaves don't taste like curry, they are more citrus. They are hard to substitute because they have a unique flavour so, if you can't get them, skip it and add a big squeeze of lime to the finished curry.
Chillies. Use long green chillies.
Tomatoes. Fresh is best. If you don't have large tommies, use cherry (about 2 cups) but I recommend sticking with fresh tomatoes over canned. Canned will change the flavour of your tofu curry substantially.
Coconut oil or a neutral flavoured oil works here.
Cornstarch (cornflour). We are going to lightly toss the tofu through a little cornflour - it's a bit of a cheat to thicken the sauce without making a slurry.
Step-by-Step Guide
You'll find full instructions and measurements in the recipe card at the bottom of the post.
Step 1.
Prepare your tofu. Before we get into the nitty-gritty, go ahead and press the tofu (for at least 20 minutes), cut it into cubes and transfer to a bowl with the cornflour. Toss well to coat and set aside.
See how I press tofu using a large pot in my marinated tofu feta post.
Step 2.
Prepare and fry the spices. In a mortar and pestle, give the fenugreek, fennel seeds and the white peppercorns a bit of a bash to break them up. You could also do this in a mini food processor or spice grinder.
Heat oil in a large heavy-bottomed pot over medium-high heat, add the crushed seeds and pepper and the curry leaves and stir until spices pop (about 1 minute).
Step 3.
Add the onions and aromatics. Stir in the shallots, garlic, ginger and green chilli and cook, stirring occasionally, for around 5 minutes or until the onions are soft. Add the turmeric, mustard seeds, cumin seeds and chilli powder (if using) to the pan and fry for a minute or until fragrant.
Step 4.
Stir in the tofu (shake any excess cornstarch off beforehand) to coat it in your spice mix.
Step 5.
Add the chopped tomatoes and cook for 3 minutes. Add the tamarind paste and veggie stock (or water) and stir through before adding the coconut milk.
Step 6.
Simmer for 10 minutes, or until the tomatoes begin to break down and the sauce thickens.
Serve with a little rice and you're golden.
Storage
In the fridge. Once cooled, store leftovers in an airtight container in the fridge for up to 4 days.
This curry, like most, will thicken in fridge. You can reheat gently in a saucepan over low to medium heat, adding a splash of water to thin it out if needed. Just a splash.
In the freezer. You can freeze this curry, although the texture of the tofu will change. Once cooled, transfer the curry to a freezer-safe container and freeze for up to 2 months. Thaw in the fridge and reheat in a saucepan, adding. splash of water to thin it out again.
FAQs
Yup. We lightly dust the tofu in corn flour (cornstarch) but that is naturally gluten-free.
Tamarind paste and concentrate is available at most Asian grocery stores. You can also buy it online.
In many stores, tamarind paste and tamarind concentrate are sold interchangeably. This recipe, you can use tamarind paste or concentrate without any issues.
Having said that, the tasting notes of tamarind paste are stronger than that of concentrate because it comes from the fruit itself. Concentrates often come from the juice, which provides a diluted flavour, or other parts of the fruit, but not the entire fruit. Different brands may also be stronger or weaker.
For more -> Masterclass
Rice! Serve it with a basmati or even a jasmine rice will work. And if the curry is a touch spicy for you, add a dollop of vegan natural yoghurt.
More Vegan Curries
Sign up to my newsletter and follow along on Facebook, Pinterest and Insta for all the latest news. If you like this recipe, please check out my cookbook "Great Vegan Meals for the Carnivorous Family" It's full of simple, carnivore-approved family recipes.
Make This Recipe
Sri Lankan-Style Tofu Curry
Equipment
- Heavy-bottomed pan
Ingredients
For the Curry
- 400 g firm tofu pressed well
- ½ teaspoon cornflour (cornstarch)
- 1½ tablespoon coconut oil or a neutral-flavoured oil
- 2 French shallots peeled and finely diced
- 3 garlic cloves peeled and minced
- ½ tablespoon ginger minced or finely grated
- 1-2 green chillies finely sliced
- 10 curry leaves a small handful
- 3 large vine-ripened tomatoes chopped
- 1 tbsp +1 tsp tamarind paste
- ½ cup (125 ml) vegetable stock
- 200 ml light coconut milk
- ½ teaspoon salt
Spices
- 1 teaspoon fenugreek seeds crushed
- 1 teaspoon fennel seeds crushed
- 1 teaspoon white pepper corns crushed
- ½ teaspoon turmeric ground
- 2 teaspoon brown mustard seeds
- 1 teaspoon cumin seeds
- ½ teaspoon chilli powder optional
Instructions
- Press the tofu well (for around 20-30 minutes), cut it into cubes and transfer to a bowl with the cornflour. Toss well to coat and set aside.
- In a mortar and pestle, give the fenugreek, fennel seeds and the white peppercorns a bit of a bash to break them up. You could also do this in a mini food processor or spice grinder.
- Heat the oil in a large, heavy-bottomed pot over medium-high heat, add the crushed seeds and pepper and the curry leaves and stir until the spices pop (about 1 minute). Be careful of the hot oil here.
- Stir in the shallots, garlic, ginger and green chilli and cook, stirring occasionally, for around 5 minutes or until the onions are soft. Add the turmeric, mustard seeds, cumin seeds and chilli powder (if using) to the pan and fry for a minute or until fragrant.
- Gently stir in the tofu to coat it in the spices.
- Stir in the chopped tomatoes and cook for 3 minutes. Add the tamarind paste and veggie stock (or water) and stir through before adding the coconut milk.
- Simmer for 10 minutes, or until the tomatoes begin to break down and the sauce thickens.
- Serve with fresh rice.
Anna says
This was really fantastic, thanks for the recipe!
Amanda says
Awesome, Anna. I am so happy you liked it. 🙂
Anura bandara says
Sounds good