I was trying to match the soup of our favorite Indian restaurant, with a few additions of my own. It came out great -- better even than the restaurant's soup. It is smooth, rich, and savory.
Put all ingredients up to the onion into a large soup pot and bring to a boil. Once lightly boiling, reduce to a simmer and cover. Cook until the dal breaks easily, 20-30 minutes.
While that is boiling, boil the carrots and potatoes in a separate pot. Watch closely -- boil until the potato and carrots begin to get tender, but still have a little bite. Drain them, reserving the liquid, and set aside.
Add the potato-carrot water to the boiling dal mixture to keep the right consistency. I used about 1 cup.
Once the dal is ready, use an immersion blender or countertop blender to puree.
In a small skillet, heat the oil until very hot but not smoking. Add the spices and stir until the cumin seeds begin to darken -- less than 1 minute.
Add the oil-spice mixture, reserved potatoes and carrots, and spinach, cook for 2-3 more miniutes and serve.
Optionally, grill a chicken breast and dice into 1/2 in cubes, and place with rice in the bowls before ladling in the soup.
Garnish with cilantro.