Rinse the lentils. Rinse the lentils in cold water until the water runs clear. Then soak overnight or at least for 6 hours. This will help the lentils cook faster and help improve the absorption of important nutrients.*
Saute the aromatics. Heat a large, deep skillet over medium-high heat and add in the avocado oil or olive oil. Once the oil is shimmering, add in the onion, and saute until translucent. Next, add in the garlic, ginger, and tomato paste and cook for 3 minutes, stirring frequently to prevent the garlic from burning.
Bloom the spices. Add in the coconut sugar, kosher salt, cumin seeds, coriander, cayenne pepper, black pepper, cinnamon, cardamom, nutmeg, and cloves. Cook the spices for 30-60 seconds until fragrant, stirring constantly to prevent burning.
Add the remaining ingredients and simmer. Finally, add in the lentils, kidney beans, crushed tomatoes, and coconut milk, and mix well. Reduce the heat to low and partially cover the pan with a lid. Simmer on low heat for 25-30 minutes, or until the lentils are cooked through and have mostly softened. Make sure to stir the dal every 8-10 minutes to ensure it’s not sticking to the bottom of the pan. Once cooked, the curry will thicken and become super creamy. If you find that the lentils are not quite soft after 30 minutes, add a few spoons of water and cook for another 5 minutes.
Blend the dal and garnish.Turn off the heat and using an immersion blender, blitz the dal 3-4 times. This will make the dal slightly thicker, and creamier. Finally, stir in the cilantro and lemon juice and adjust the salt as needed.
Serve. Serve the dal with rice/flatbread/pita/even sourdough bread and garnish with additional cilantro. Store leftovers in the fridge for 3-4 days.