Creamy Lentil Dal Makhani

Featured in: Hearty and Delicious Mains

This vegan dal makhani transforms humble lentils and kidney beans into a rich, creamy dish with aromatic spices. The lentils are soaked overnight, then simmered with tomatoes, coconut milk, and a blend of warming spices including cumin, cardamom, and cinnamon.

The addition of coconut milk creates the signature creamy texture traditionally achieved with dairy. After cooking, briefly blending creates the perfect consistency while preserving some texture. Garnished with fresh cilantro and a squeeze of lemon, this dal pairs beautifully with rice or flatbread for a complete meal.

A smiling woman in an apron poses for a selfie in a professional kitchen.
Updated on Fri, 18 Apr 2025 12:10:06 GMT
A bowl of soup with a spoon in it. Pin it
A bowl of soup with a spoon in it. | tastygusto.com

This vegan dal makhani transforms humble lentils and beans into a rich, creamy curry that rivals the traditional butter-laden version. I developed this recipe after years of trying to recreate the luxurious texture of restaurant dal makhani without dairy, and coconut milk turned out to be the perfect solution.

I first made this recipe during a cold winter evening when I was craving something warm and comforting. The aromatic spices filled my kitchen with the most incredible scent, and now this is my go to meal when hosting friends who follow plant based diets.

Ingredients

  • Brown lentils: these are the foundation of the dish providing earthy flavor and hearty texture. Look for lentils that appear uniform in size for even cooking
  • Kidney beans: add additional protein and a pleasant contrast in texture. Rinse canned beans thoroughly to remove excess sodium
  • Olive or avocado oil: helps bloom the spices and sauté aromatics. Choose cold pressed for best flavor
  • White onion: creates a flavor base. Select firm onions with no soft spots
  • Fresh garlic and ginger: these aromatics are essential for authentic flavor. Always use fresh rather than pre minced for vibrant taste
  • Tomato paste: provides concentrated umami and slight acidity. Look for paste in tubes for best flavor
  • Coconut sugar: balances the acidity with subtle sweetness. Brown sugar works in a pinch
  • Spice blend: the magic of this dish comes from the perfect balance of warming spices. Toast whole spices and grind them yourself for the most intense flavor
  • Crushed tomatoes: adds body and tanginess. San Marzano variety offers superior flavor
  • Coconut milk: the secret to creating creaminess without dairy. Use full fat for the richest texture
  • Fresh cilantro: brightens the finished dish. Look for bunches with perky leaves and no yellowing
  • Lemon juice: adds vital acidity to balance the richness. Always use fresh squeezed

Step-by-Step Instructions

Prepare the lentils:
Rinse brown lentils thoroughly under cold running water until it runs clear, swishing them around with your fingers. Soaking them overnight or for at least 6 hours is crucial as it significantly reduces cooking time and makes nutrients more bioavailable. If you forgot to soak, quick soak by covering with boiling water for 1 hour.
Create the flavor base:
Heat your oil in a large deep skillet over medium high heat until it shimmers but does not smoke. Add finely chopped onion and cook for 5 7 minutes, stirring occasionally until they become translucent and slightly golden at the edges. This caramelization process builds foundational flavor for the entire dish.
Incorporate aromatics:
Add the freshly grated garlic and ginger along with tomato paste, stirring constantly to prevent burning. Cook this mixture for a full 3 minutes to allow the rawness of the garlic and ginger to mellow and the tomato paste to caramelize slightly, deepening the flavor profile significantly.
Bloom the spices:
Add the coconut sugar and all spices to the pan. This critical step releases the essential oils in the spices, intensifying their flavors and aromas. Stir constantly for 30 60 seconds until your kitchen fills with a magnificent fragrance, being careful not to let them burn which would create bitterness.
Simmer to perfection:
Add drained lentils, kidney beans, crushed tomatoes, and coconut milk, stirring to combine thoroughly. Reduce heat to low and partially cover with a lid, allowing some steam to escape. Let simmer for 25 30 minutes, stirring every 8 10 minutes to prevent sticking. The lentils should become tender but still hold their shape slightly.
Finish and refine:
Turn off heat and use an immersion blender to pulse just 3 4 times through different areas of the pot. This creates textural contrast with some lentils remaining whole while others break down to thicken the dal. Stir in fresh cilantro and lemon juice, tasting and adjusting salt as needed for perfect balance.
A bowl of soup with a piece of bread on top. Pin it
A bowl of soup with a piece of bread on top. | tastygusto.com

The most magical ingredient in this recipe is the blend of spices. I spent months perfecting this combination, with cardamom being my secret weapon. The first time my Indian neighbor tried this recipe, she asked for seconds and the recipe to share with her mother. That moment confirmed I had created something special that honored traditional flavors while being fully plant based.

Make Ahead Options

This dal makhani actually improves with time as the flavors meld together and intensify. You can prepare it up to three days in advance and refrigerate in an airtight container. When reheating, add a splash of water or vegetable broth if it has thickened too much. This makes it perfect for meal prep or when planning dinner parties where you want to minimize day of cooking.

Storage Guidelines

Allow the dal to cool completely before transferring to airtight containers. Refrigerate for up to 5 days, though the cilantro will lose some brightness after the second day. For freezing, portion into individual servings in freezer safe containers, leaving a half inch of space at the top for expansion. Freeze for up to 3 months. Thaw overnight in the refrigerator and reheat gently on the stovetop, adding a touch of freshly squeezed lemon juice and a sprinkle of cilantro before serving to revive the flavors.

Simple Substitutions

The beauty of this recipe lies in its flexibility. No brown lentils? Black lentils create an even more authentic version, though they may need additional cooking time. French green lentils work too but maintain more texture. Kidney beans can be replaced with black beans for a different flavor profile or omitted entirely if you prefer. For coconut milk, cashew cream makes an excellent substitute simply blend 1 cup of soaked cashews with 1 cup of water until completely smooth. If you avoid nuts, unsweetened oat cream provides similar creaminess.

A bowl of soup with a spoon in it. Pin it
A bowl of soup with a spoon in it. | tastygusto.com

This dal makhani is a delightful celebration of plant based flavors. It’s sure to become a comforting favorite for any occasion!

Frequently Asked Questions

→ Can I use canned lentils instead of dried?

Yes, you can substitute canned lentils to save time. You'll need about 2½ cups of canned, drained lentils. Reduce the simmering time to about 15 minutes since they're already cooked. The texture may be slightly different but still delicious.

→ Is there a substitute for coconut milk?

For a coconut-free version, you can use unsweetened cashew cream (blend soaked cashews with water) or unsweetened oat cream. These alternatives will maintain the creamy texture while offering a different flavor profile.

→ How spicy is this dal makhani?

With 1 teaspoon of cayenne pepper, this dal has a moderate heat level. For a milder version, reduce the cayenne to ¼ teaspoon. If you prefer it spicier, increase to 1½ teaspoons or add some fresh chopped green chilies.

→ Can I freeze leftover dal makhani?

Absolutely! This dal freezes exceptionally well. Allow it to cool completely, then portion into airtight containers. It will keep in the freezer for up to 3 months. Thaw overnight in the refrigerator and reheat gently on the stovetop with a splash of water.

→ Why do I need to soak the lentils overnight?

Soaking lentils reduces cooking time, improves digestibility, and enhances nutrient absorption. If you're short on time, you can quick-soak them by bringing to a boil for 2 minutes, then removing from heat and letting them sit covered for 1 hour.

→ What can I serve with dal makhani?

This dal pairs wonderfully with basmati rice, naan bread, roti, or even sourdough. For a complete meal, serve with a side of cucumber raita, pickled onions, or a simple green salad with lemon dressing.

Vegan Dal Makhani

Creamy lentil and kidney bean curry with aromatic spices, coconut milk, and fresh herbs for a satisfying plant-based meal.

Prep Time
20 Minutes
Cook Time
40 Minutes
Total Time
60 Minutes

Category: Main Dishes

Difficulty: Intermediate

Cuisine: Indian

Yield: 4 Servings

Dietary: Vegan, Vegetarian, Gluten-Free, Dairy-Free

Ingredients

→ Lentils & Beans

01 1 cup brown lentils, soaked overnight
02 1 can (13.5 oz) kidney beans, drained and rinsed

→ Aromatics & Spices

03 4 tbsp olive oil or avocado oil
04 1/2 medium white onion, finely chopped
05 5 garlic cloves, finely grated
06 2" piece ginger, finely grated
07 2 tbsp tomato paste
08 1 tbsp coconut sugar
09 2 tsp kosher salt, plus more as needed
10 2 tsp cumin seeds
11 1 tsp coriander
12 1 tsp cayenne pepper
13 1 tsp black pepper
14 1/2 tsp ceylon cinnamon
15 1/2 tsp ground cardamom
16 1/4 tsp nutmeg
17 1/4 tsp cloves

→ Other Ingredients

18 1 can (400g) crushed tomatoes
19 1 can (425ml) coconut milk
20 1/2 cup finely chopped cilantro
21 1-2 tbsp lemon juice

Instructions

Step 01

Rinse the lentils in cold water until the water runs clear. Soak overnight or at least for 6 hours to improve cooking time and nutrient absorption.

Step 02

Heat a large, deep skillet over medium-high heat and add the oil. Once shimmering, add onion and sauté until translucent. Add garlic, ginger, and tomato paste, cooking for 3 minutes while stirring frequently to prevent burning.

Step 03

Add coconut sugar, salt, and all spices (cumin seeds, coriander, cayenne, black pepper, cinnamon, cardamom, nutmeg, and cloves). Cook for 30-60 seconds until fragrant, stirring constantly to prevent burning.

Step 04

Add lentils, kidney beans, crushed tomatoes, and coconut milk, mixing well. Reduce heat to low and partially cover the pan. Simmer for 25-30 minutes, stirring every 8-10 minutes, until lentils have softened and curry has thickened. Add a few spoonfuls of water if needed to cook lentils completely.

Step 05

Turn off heat and use an immersion blender to briefly blend the dal 3-4 times for a creamier texture. Stir in cilantro and lemon juice, adjusting salt as needed.

Step 06

Serve hot with rice, flatbread, pita, or sourdough bread. Garnish with additional cilantro. Leftovers can be refrigerated for 3-4 days.

Notes

  1. Soaking lentils overnight reduces cooking time and improves nutrient absorption.
  2. For a thicker consistency, blend the dal more thoroughly with the immersion blender.

Tools You'll Need

  • Large, deep skillet with lid
  • Immersion blender

Nutrition Facts (Per Serving)

It is important to consider this information as approximate and not to use it as definitive health advice.
  • Calories: 380
  • Total Fat: 18.3 g
  • Total Carbohydrate: 42.5 g
  • Protein: 12.6 g