Warm the olive oil in a large Dutch oven or pot over medium heat. One-fourth cup of olive oil may seem like a lot, but it adds a nice depth of flavor to 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, stirring constantly, about 30 seconds. Pour in the drained diced tomatoes and cook for a few more minutes, stirring often 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 the heat and bring the mixture to a boil.
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 and pepper if desired. For a spicier soup, add another pinch or two of red pepper flakes.
Serve while hot.