Place the kidney beans and lentils in a large saucepan with 3 cups of water and salt. Cover and bring to a boil. Reduce the heat to a simmer and cook the beans until tender, 50-60 minutes. Once the beans are tender, drain them and reserve the boiling liquid, we'll be using that later.
For the Dal
Heat the butter in a large skillet with a lid. Add garlic and ginger and sauté over medium heat until fragrant, 1-2 minutes.
Add tomato paste and red pepper flakes and sauté, stirring constantly, for 1-2 minutes.
Add the cumin, turmeric, coriander, and garam masala. Mix well.
Add the bean boiling water to the tomato paste mixture in the skillet, stirring until the mixture is smooth.
Add the cooked beans and celery leaves. Mix well. Cover your skillet and reduce the heat to low. Simmer the dal for 20 minutes, stirring occasionally to keep the lentils from sticking to the bottom of the pan. If the dal gets too dry, add water, a half cup at a time. The mixture is done when the lentils are very tender and the dal has thickened slightly.
Remove the dal from the heat and stir in the yogurt.