Wash and soak lentils and kidney beans for about 4-5 hours or overnight.
Rinse and boil the lentils and beans in about 4 1/2 cups of water in a large pot or pressure cooker until tender, about 1 hour in a large pot and 45 minutes in an Instant Pot.
Separately, heat the oil and fry the onion, garlic, cumin seeds, and button red chilies.
After the onions and garlic have fried, add the tomato puree and spices and continue to fry for 6-8 minutes until the oil separates.
After the masala is ready, add the boiled lentils and beans.
Using a potato masher, mash some beans and lentils and simmer for 15-18 minutes until well blended.
As soon as the daal and beans are well combined in the masala, add the butter and cream and let them emulsify.
Cook for another 6 -8 minutes on low flame.
Your Daal makhni is ready, served with boiled rice or flatbread