This post may contain affiliate links, view our disclosure.
Dal makhani (Indian butter lentils) is a slow-cooked North Indian dish of black lentils and red kidney beans in a richly-spiced, creamy, buttery sauce.

Ever since one of my very best friends introduced me to Indian cuisine in college, it’s been a favorite of mine. She started me off on chicken tikka masala, of course thinking that it would be the most certain dish to win me over. But not long after first trying it, my affection for Indian food branched out to any Indian-spiced dish I could get my hands on.
My friend’s father offered to set up a daily food delivery for her from a local Indian restaurant. My eyes widened in jealousy and then narrowed in disbelief when she said she turned him down flat. I can’t eat Indian food from a restaurant every day!, she exclaimed. After spending time with her, cooking together, and later visiting home with her where we feasted on her mom’s cooking nightly, I understood what she meant.
Like most cuisines, restaurant-made Indian food doesn’t hold a candle to homemade Indian food.
Hailing from the Punjabi region of Northern India, dal makhani (which is also transliterated as daal makhani and dhal makhani) is one such recipe. It has a velvety, aromatic sauce with complex spices, deep notes of sweetness from caramelized onion, and richness from a combination of cream and butter.
This dish isn’t a quick-cooking meal, and neither is it a low-calorie meal. (But with a name like butter lentils that probably doesn’t come as a surprise.) Like most things made from scratch, this dish is worth every second of effort. And as a bonus, most of the time required to make it isn’t hands-on time. Rather, it just requires a little bit of planning ahead. Sitting down to this for dinner, you’ll realize it is in fact worth every minute spent on it and every calorie ingested.

Why You’ll Love This Recipe
- It’s a better-than-restaurant-quality meal right out of your own kitchen.
- This dish is full of healthy, economical ingredients like lentils and beans.
- Leftovers are even better, and bonus, this freezes like a dream so it’s perfect for meal prep.
Ingredients
Breaking It Down
Ingredients Explained
In this section I explain the ingredients and give substitution ideas where applicable. For the full recipe (including the ingredient amounts), see the recipe card below.

- Dried whole black lentils (urad dal) and dried red kidney beans (rajma) – Black lentils and kidney beans are the traditional legumes in authentic dal makhani.
- Vegetable stock – Or chicken stock for richer flavor if keeping this vegetarian isn’t a concern.
- Ghee – Aka clarified butter. We cook the aromatics in ghee for rich flavor.
- Onion, garlic, and ginger – These aromatics create a deep base flavor for this curry. Note that we caramelize the onion to develop its sweetness to help create a well-balanced dish without adding sugar.
- Bay leaf, cinnamon stick, cardamom pods, whole cloves, and dried hot red chilies – This blend helps create a complex, well-balanced flavor profile.
- Garam masala spice mix – This fragrant spice blend isn’t the same as curry powder. If you don’t like curry, you might actually enjoy this dish because the spices are quite different. You can find garam masala on Amazon, at Indian grocery stores, and frequently even in the spice aisle or the international aisle at the regular grocery store.
- Coriander, cumin, Kashmiri chilli powder, sweet paprika, ground fenugreek seeds, black pepper, and salt – These spices transform this dish from really good to mind-blowing. You likely have a few of them in a well-stocked pantry, but there are a couple I want to mention. Kashmiri chili powder (which you’ll also see spelled “chilli” and “chile”) isn’t the same thing as the chili powder spice blend that’s used in tacos and other Tex-Mex dishes. Kashmiri chili powder is its own thing; it adds vibrant red color and lends a sweet fruity flavor with a subtle smokiness and mild heat level. The other spice I want to mention is ground fenugreek seed, which has a unique bittersweet flavor with notes of maple syrup and caramelized sugar.
- Canned diced tomatoes – I use petite-diced no-salt-added canned tomatoes.
- Tomato paste – Adds rich tomato flavor and helps thicken the sauce.
- Unsalted butter – We add butter at the end for glossy sheen and rich buttery flavor.
- Heavy whipping cream – A splash of cream is the finishing touch that gives the sauce’s red color a blushing hue, and enhances the velvety texture.
Step-by-Step Photo Instructions: How to Make Dal Makhani

- Add the black lentils and red beans to a large bowl. Fill the bowl with room temperature water and soak overnight (8 to 12 hours). Rinse and drain the legumes next day, picking out any impurities (such as small pieces of rock). Add them to a 5-quart pot along with the vegetable stock. Bring up to a boil, then cover the pot, turn heat down to simmer, and cook 1 hour, stirring occasionally.
- While the beans cook, heat the ghee in a large skillet over medium to medium-high heat. Add the onion and cook until soft and deep caramel in color, about 15 minutes, stirring occasionally. You can add a splash of water or turn the heat down at any point if the onions start to get too dark or the pan starts to get too hot.
- Once the onion is caramelized, turn the heat to medium (if it wasn’t there already) and add the garlic and ginger. Cook 1 minute, stirring constantly. Add the bay leaf, cinnamon stick, cardamom pods, cloves, red chilies, garam masala, coriander, cumin, Kashmiri chilli powder, sweet paprika, fenugreek, and black pepper. Cook until fragrant, about 20 seconds, stirring constantly. Remove from the heat.
- After the lentils and beans have cooked for 1 hour, stir in the onion/spice mixture, the diced tomatoes, and the tomato paste. Gently simmer (uncovered) until the sauce is somewhat thickened and the lentils and beans are fully tender, about 45 minutes to 1 hour, stirring frequently. (TIP: You can cover the pot or add a splash of water or stock if the sauce gets too thick before the lentils and beans are tender.)
- Turn off the heat and stir in the butter.
- Stir in the cream. Serve topped with any garnishes you like, along with rice or Indian bread.
Storage
Cool to room temperature and then store in an airtight container in the fridge for up to 4 days. Or you can freeze for up to 3 months.

Tips For the Best Dal Makhani Recipe
- Plan ahead, and don’t forget to soak the legumes the night before. Soaking takes almost no effort (it’s just a matter of remembering to do it), and it helps the legumes cook faster and more evenly. After soaking, rinse them to remove the dust that was on their surface and pick out any impurities, such as small pieces of rock.
- As written, this recipe only has a mild spice level. You can add more dried hot red chilies (or cayenne pepper) as desired to increase the spicy heat.
- Use chicken stock instead of vegetable stock for deeper, richer flavor.

Frequently Asked Questions
Studies show that real, grass-fed butter is actually good for you!
The list of health benefits actually goes on and on. But for starters, butter helps the body absorb fat-soluble vitamins. It’s also a great source of antioxidants and other nutrients (such as Vitamins A, D, E, and K and the mineral selenium) that strengthen our immune system, protect our cardiovascular system, and help prevent cancer.
An important component of butter is conjugated linoleic acid. This not only helps protect against cancer, but may also help with weight management.
Further, the short and medium-chain fatty acids in butter’s saturated fat are burned as quick energy, not stored as fat in the body.
You can read more about the health benefits of real, grass-fed butter on Green Med Info, Everyday Health, and Delicious Obsessions.
This is an easy dish to make vegan with a couple substitutions:
1. Use vegetable stock instead of chicken stock.
2. Instead of butter, use coconut oil (refined coconut oil is more neutral-tasting than cold-pressed virgin coconut oil). You could also use a vegan “butter” if you prefer.
3. Omit the heavy whipping cream and use canned unsweetened full-fat coconut milk instead.

What Goes Well with Dal Makhani?
- Indian flatbread, such as naan (sourdough naan is a particularly delicious pairing!)
- Prepared basmati rice (or cauliflower rice to keep the carbs down)
- Salad shirazi
More Indian Recipes to Try
- Palak Paneer (Indian Spinach Curry With Paneer Cheese)
- Instant Pot Kheema Pav (aka Indian Sloppy Joes)
- Aloo Tikki (Crispy Indian Potato Cakes)

Let’s Connect

Did you make this recipe? Please rate it and leave a comment below. You can also tag @anediblemosaic on social media.
To stay up-to-date, follow me on Facebook, Instagram, Pinterest, and Twitter!

Dal Makhani Recipe (Indian Butter Lentils)
Email This Recipe
Get this recipe link emailed straight to your inbox!
Ingredients
- 1 cup dried whole black lentils (aka urad dal)
- 1/2 cup dried red kidney beans
- 8 cups vegetable stock (or chicken stock for richer flavor)
- 3 tablespoons clarified butter (aka ghee)
- 2 large onions (chopped)
- 6 large cloves garlic (crushed using a mortar and pestle or grated on a microplane)
- 1 inch piece fresh ginger (grated on a microplane)
- 1 bay leaf
- 1 cinnamon stick
- 2 cardamom pods (cracked open)
- 2 whole cloves
- 2 dried hot red chilies (more or less to taste)
- 1 1/2 tablespoons garam masala spice mix
- 3/4 teaspoon ground coriander
- 3/4 teaspoon ground cumin
- 3/4 teaspoon Kashmiri chilli powder
- 3/4 teaspoon sweet paprika
- 1/4 teaspoon ground fenugreek seeds
- 1/4 teaspoon black pepper
- 1 teaspoon coarse kosher salt
- 14.5 ounce can petite diced no-salt-added tomatoes
- 6 ounce can tomato paste
- 4 tablespoons unsalted butter (cut into 4 pieces)
- 1/2 cup heavy whipping cream
Garnish Ideas:
- Sliced red onion
- Jalapeno slices
- Sliced scallion
- Fresh cilantro leaves
- Heavy whipping cream
Instructions
The Night Before:
- Add the black lentils and red beans to a large bowl; fill the bowl with room temperature water and soak overnight (8 to 12 hours).
The Day Of:
- Cook the beans. Rinse and drain the legumes next day, picking out any impurities (such as small pieces of rock). Add them to a 5-quart pot along with the vegetable stock. Bring up to a boil, then cover the pot, turn heat down to simmer, and cook 1 hour, stirring occasionally.
- Create the base flavor.Caramelize the onion. While the beans cook, heat the ghee in a large skillet over medium to medium-high heat. Add the onion and cook until soft and deep caramel in color, about 15 minutes, stirring occasionally. You can add a splash of water or turn the heat down at any point if the onions start to get too dark or the pan starts to get too hot.Add the aromatics. Once the onion is caramelized, turn the heat to medium (if it wasn’t there already) and add the garlic and ginger; cook 1 minute, stirring constantly.Sauté the spices. Add the bay leaf, cinnamon stick, cardamom pods, cloves, red chilies, garam masala, coriander, cumin, Kashmiri chilli powder, sweet paprika, fenugreek, and black pepper. Cook until fragrant, about 20 seconds, stirring constantly. Remove from the heat.
- Incorporate the spiced caramelized onions into the beans. After the lentils and beans have cooked for 1 hour, stir in the onion/spice mixture, the diced tomatoes, and the tomato paste.Gently simmer (uncovered) until the sauce is somewhat thickened and the lentils and beans are fully tender, about 45 minutes to 1 hour, stirring frequently. (TIP: You can cover the pot or add a splash of water or stock if the sauce gets too thick before the lentils and beans are tender.)
- Finishing touches and serve. Turn off the heat and stir in the butter and cream. Serve topped with any garnishes you like, along with rice or Indian bread.
Notes
- Serving Suggestions: This dish goes well with a variety of things like naan, sourdough naan, basmati rice (or cauliflower rice to keep the carbs down), and/or salad shirazi.
- Nutrition Information: The nutritional information for this recipe was calculated without the garnish ideas or serving suggestions.
- Storage: Cool to room temperature and then store in an airtight container in the fridge for up to 4 days or in the freezer for up to 3 months.
Nutrition
Nutritional information is automatically calculated and should be used as an approximate.
Share it with me on Instagram and leave a comment to let me know your thoughts!

This post was first published on An Edible Mosaic on January 22, 2014 and updated on March 28, 2022.

I’m the writer, recipe developer, photographer, and food stylist behind this blog. I love finding the human connection through something we all do every day: eat! Food is a common ground that we can all relate to, and our tables tell a story. It’s my goal to inspire you to get in the kitchen, try something new, and find a favorite you didn’t know you had.
Free Bonus


This recipe is intensely delicious.
My husband and I eat a lot of dal when we scuba dive in Fiji. I’ve searched for an authentic recipe and finally found it here.
You have a delicious goulash recipe, too, that is just like our memories of lunches when skiing in Switzerland and Austria.
I really appreciate your focus on authentic flavors and spices. Your recipes are excellent.
Joan, Thank you so much for your lovely comment, you made my day. 🥰
I don’t know why it took me this long to rate this recipe, because I have been making it regularly ever since I stumbled upon it years ago! I am a Hungarian gal and I grew up eating Indian food at my best friend’s house across the street. That is where my love for Indian cuisine began. Fast forward 30 years and I cook more Indian food today than any other cuisine (I am flavour obsessed). My family loves it too and this is one of our absolute favorite recipes. My best friend’s parents tried this dal and said they really enjoyed it….and that is a huge compliment because they are both fantastic chef’s! Thank you for sharing this gem. I will continue to send it to others.
Linda, Thank you so much for your kind words and thoughtful comment. I’m so happy you’re enjoying the recipe – and that is a huge compliment indeed! :)
Hello! I just made this recipe (well, with a few modifications) and it is delicious!! I love butter chicken and have a recipe for that on my blog (frugalnutrition), but I was looking for something super flavorful to do with my brown lentils – which are my favorite cheap protein – and was so happy to come across this recipe!
I didn’t have the cinnamon stick, cardamom pods, bay leaf, whole cloves, or even the fenugreek on hand today so I omitted them. I also used all lentils – about 1.25 cups dry lentils and no other beans, so I used 4 cups of water/broth and 1/2 cup coconut cream.
I wanted to just use up items I had and made those minor changes above and this came out so delicious! I’m sure with those additional ingredients it would be even better. We are having it with cucumber salad, yogurt, and garlicky naan.
(I commented twice because I forgot to hit the star rating the first time!!)
Hello
I have tried them in a restaurant and loved them and want to try at home.. however I am not a fan of all the beans. Could I use dry lentils all the way? Would anything change from the menu/procedure?
Thank you!!
Nicole, Yes, you can use only lentils if you don’t like beans. Keep everything else the same. I hope you enjoy it! :)
Hi Faith,
This looks delicious! I’m wondering, do you put the cardamon, cinnamon stick, and cloves in a spice bag and then take out before serving, or do you just throw them all in, simmer, then fish them all out ?
Jan, I don’t use a spice bag; I typically try to fish them out, but a spice bag would definitely make it easier!
I make this in slow cooker over night. You really do not need to add any cream or butter if you cook it slowly. I place it on low before I sleep, then turn it up when I awake. It will thicken nicely. I really don’t use that many spices but fenugreek seeds is a must, with lots of tomato sauce that thickens it. If you really want some fat or cream, I add low fat sour cream at the very end.
When I saw the picture I thought that I am going to go to an Indian website …….am mighty impressed with that daal makhani and so proud too. It is one of those dishes that if made correctly will make you swoon. Congratulations
Yum! Delicious Faith! Made it tonight and the whole family gobbled it up. Perfect for a cold winter evening. :)
Julie, I’m so glad these were a hit!!! :)
I made this tonight – first try at Indian food – and it was fantastic. I am a great lover of Indian food and you convinced me with this recipe that home-cooked Indian food just can’t be beat!
Ah! Reminded me of my mother’s home-cooking. So indulging. Love it :)
The first time I had dal mahkani was in Christchurch, New Zealand (I live in California). I was culinarily transported. None of our local Indian restaurants serve it, so I had to do an internet search on how to make it myself. Haven’t been overwhelmed with the ones I’ve tried (too simple, I think). But yours sounds wonderful. I’ll have to give it a try. Thank you!
we do have one restaurant here that we love, and visit often.
I go through my Indian phases, where I cook a lot of dishes at home (I think I remind myself how GOOD it is…) I am definitely adding this to my list!
Hi Faith – This recipe looks so delicious! Thank you for the link love to my site and butter post too. I really appreciate the shout out! :)
Oh! this looks so delicious……better then rest. kind. This is one of my fav. dal I even love it cold stariaght out of the fridqe. I use pressure cooker to cook dal,I’m an Indian so dal is kinda everyday meal & pressure cooker makes the life so easy.
This sounds amazing Faith! Dal Makhani is one of my favorite dishes.
I think Dal Makhani is the first dal I ever tried and is the reason I love Indian food today. This sounds amazing Faith – thanks so much for sharing this recipe.
@Carly, it doesn’t seem to be made of silver, simply because of the greenish blue corrosion product on the handle, I think it’s copper.
DorisQ, Yes, because of the look of the tarnish I thought this bowl was copper too!
I’m a huge fan of cooking Indian at home. Aromatherapy!! I love cooking with all the different kinds of lentils especially. I love the beautiful dish you served your dal in – is it pewter? Silver? I’d love to know where you acquired it!
Carly, Aromatherapy is right, lol! Thanks so much, I love this bowl too…I found it at an estate sale (vintage and secondhand stores are also great places to look!). I don’t remember any identifying markings on the bottom; I’d check to make sure, but the piece is in storage right now. (I’m not 100% certain, but I think it’s made of copper.)
Awesome – this recipe came just in time! My husband and I ordered Indian take-out on Friday and this is the dish he got. We make nearly all of our food from scratch, but were lamenting that we are kind of afraid to try Indian dishes – so many spices! He’ll be excited to try this recipe – thanks!
What a beautiful dish and homemade is always best as you know exactly what goes in it. I can almost smell the lovely spices cooking. Take Care, BAM
My best friend is Indian, so I can attest to the fact that homemade is VERY different from restaurant Indian food! I adore Indian food flavors no matter how I can get em…and I definitely want some of this dal in my life!
I am trying to eat butter in moderation due to cholesterol reasons but I never say know to a finely cooked meal like this one even if I have to consume butter. It looks hearty and filling!
I just made daal makhani today :) I love adding kasori methi to it. I have been having the hardest time photographing this dish….it always comes out so shiny and looks unappetizing. Yours looks wonderful!
Glad I found you on Tasty Kitchen, looking forward to following your blog! This looks and sounds absolutely incredible.
Happy Blogging!
Your lentils sound so delicious and aromatic!
I LOVE dal makani but haven’t yet attempted to make it, thanks for sharing this!
…and do you do home delivery :P I have yet to find an Indian restaurant that I heart. Daal makhani looks soo good.
This sounds perfect for these cold winter days we’ve been having!
Girl, I love love dal makhani but mine never comes out tasty!! Need to try your version!
I could eat lentils like this for every meal! They look perfect.
I go through the same process when I go out for Indian food…I get all hot to trot and then when it comes down to it, I’m all “wah waaahhh…could’ve stayed at hom.” Except for the naan part…I’ve never made it and have definitely used a naan craving as an excuse to go out to Indian food. This recipe looks AMAZING! I’ve never had dal makhani and I’m all about trying it!
Scrumptious! The kind of food I love.
Cheers,
Rosa
I’m always meaning to try at home Indian. I’ve only had Indian food once and had such a bad experience. This dish looks awesome!
I would add chopped cilantro. too me it isn’t finished until it has cilantro.