Make the flavor base – Heat 2 tablespoons olive oil in a large skillet or Dutch oven over medium heat. Add 1 onion (chopped) and sauté for about 3 minutes, until softened. Stir in 1 inch ginger and 2 cloves garlic (both grated), and ¼ teaspoon red pepper flakes, and cook for another minute, just until everything becomes fragrant.
Simmer the legumes – Pour in 2 cups tomato puree and 2 cups vegetable broth, then add 3 cups black lentils and ½ cup kidney beans (cooked/canned). Season with ½ teaspoon cinnamon, 1 teaspoons salt, and ¼ teaspoons black pepper. Simmer for about 20 minutes, or until the legumes become tender and buttery, and the flavors have melded beautifully.
Add cream and butter – Stir in ½ cup heavy cream (or half-and-half), 2 tablespoons butter, and 1 teaspoon garam masala. Blend about one-third of the dal using an immersion blender directly in the pot, or transfer to a standing blender and return it to the pan. Give everything a final stir, taste, and adjust salt as needed. At this point, you can serve it as is – or go for the optional smoky twist.
Optional: Smoke the dish – Place a small metal cup or bowl in the center of the pot. Carefully drop in a piece of hot charcoal, then top it with a bit of butter. Immediately cover the pot with a lid to trap the smoke and let it sit for 1–2 minutes. For a deeper smoky flavor, repeat this step 2–3 times. No charcoal? No problem–light 2 or 3 bay leaves instead, place them in the metal container, and cover the pot to infuse the dal with their aroma.
Serving suggestions – Louise and I love scooping up dal makhani with Indian flatbreads like paratha or naan. It’s also perfect spooned over fluffy basmati rice or fragrant saffron rice.Top each serving with a squeeze of lemon juice, a knob of butter, a sprinkle of fresh cilantro, and a generous dollop of raita.
SUBSTITUTIONS
Indian Black lentils (urad dal) – Traditional choice; sub with canned, brown, green, or regular black lentils; boil 30 mins if cooking from scratch.
Olive oil – sub butter or ghee.
Kidney beans (rajma) – Optional, but adds heartiness and texture.
Cinnamon & garam masala – Warm spices that give dal makhani its signature depth. Substitute 1 tsp cumin and 1 tsp coriander.
Heavy cream – sub with half-and-half or dairy-free cream like cashew.
Butter – Classic for that “makhani” taste; use plant-based butter if needed.
Vegetable broth – Adds savory depth; water works as a simple substitute.
Tomato purée – Use high-quality passata for best flavor; crushed tomatoes also work.
TIPS
Don’t skimp on the fat – A combination of heavy cream (or half-and-half) and butter makes the lentils rich, silky, and deeply satisfying. For a vegan version, non-dairy cream and plant-based butter work beautifully too.
Choose a good-quality tomato purée – We highly recommend Italian passata for Indian recipes – it’s naturally sweet, rich, and doesn’t need long cooking to develop flavor. Perfect for a quicker dal makhani.
Blend part of the dal for creaminess – Since we’re not slow-simmering this for hours, blending about 1/3 of the mixture is the fastest way to achieve that velvety, restaurant-style texture.
STORAGEThis recipe keeps 4 - 5 days in an airtight container in the fridge. Let cool down for about 30 mins at room temp before storing away. It freezes well for up to 3 months. Thaw overnight in the fridge.