Warm the olive oil in a large Dutch oven or pot over medium heat. One-fourth cup olive oil may seem like a lot, but it adds a nice depth of flavor in this large pot of soup.
Once the oil is shimmering, add the chopped onion and carrot and cook, stirring often, until the onion has softened and is turning translucent, about 5 minutes.
Add the garlic, cumin, curry powder and thyme. Cook until fragrant while stirring constantly, about 30 seconds. Pour in the drained diced tomatoes and cook for a few more minutes, stirring often, in order to enhance their flavor.
Pour in the lentils, broth and the water. Add 1 teaspoon salt and a pinch of red pepper flakes. Season generously with freshly ground black pepper. Raise heat and bring the mixture to a boil, then partially cover the pot and reduce the heat to maintain a gentle simmer. Cook for 25 to 30 minutes, or until the lentils are tender but still hold their shape.
If you have an emersion blender, gently blend the soup in the pot for 10-15 seconds moving the emersion blender around the pot. Be sure not to over blend as you want whole lentils still visible.
Add the baby spinach and cook for 5 minutes, keeping the vibrant color. Taste and season with more salt, pepper if desired. For spicier soup, add another pinch or two of red pepper flakes.
Serve while hot.