In a large pot over medium heat, add a splash of water (or broth). Once warm, stir in the onion and cook for 5 minutes, until softened. Add the garlic and cook another 1–2 minutes, adding more water as needed to prevent sticking.
1 medium onion, 4 cloves garlic
Stir in the cumin, turmeric, cinnamon, cardamom, black pepper, and salt. Cook for 1 minute, stirring constantly, to bring out their flavor.
1 tablespoon ground cumin, 2 teaspoons ground turmeric, ½ teaspoon ground cinnamon, ½ teaspoon ground cardamom, ½ teaspoon black pepper, 1 teaspoon salt
Add the rinsed red lentils, diced tomatoes (with juices), coconut milk, and vegetable broth. Stir well to combine.
2 cups dried red lentils, 2 (14.5-ounce) cans diced tomatoes, 1 (13.5-ounce) can light coconut milk, 6 cups low-sodium vegetable broth
Bring the mixture to a boil, then reduce heat to low. Cover and simmer for 20–25 minutes, stirring occasionally, until the lentils are tender and the soup has thickened.
Stir in the spinach and lime juice. Let the spinach wilt for 2–3 minutes, then taste and adjust seasoning as needed.
6 cups fresh spinach, 1-2 limes
Ladle into bowls and serve warm with rice, naan, or on its own as a hearty soup.