This recipe comes together quickly, and is great for lunches for the week. It also freezes well.
Finely dice onion. Chop tomatoes.
In a large soup pot, over medium heat, cook onion in butter until translucent, about 5-7 minutes. Add tomato paste, curry powder, cumin, cayenne, and salt and stir until fragrant, 30 seconds to a minute. Add lentils, tomatoes, bay leaves, and water. Partially cover, bring to a boil, lower to a simmer, and cook until lentils are tender, about 45 minutes.
Remove bay leaves. Remove soup pot from heat and puree partially with an immersion blender (but don't make it too smooth). Alternatively, puree half the soup in a blender (carefully!) and return to pot.
Return to heat, stir in spinach and salt and pepper to taste, and cook for a minute or so until spinach is wilted into the soup.