Roughly chop the onion and carrot. Heat the oil in a heavy-bottomed saucepan, add the chopped vegetables and under cover, simmer until tender, then add the garlic and the chilli flakes. Stir for about 1 minute.
Add the paprika, cumin and tomato purée. Stir and add to the rinsed and drained lentils. Stir for about 1 minute, then add the stock. Bring to the boil, then simmer for 20 minutes.
Chop the tomatoes into small cubes, add these to the soup and cook for another 5 minutes. Taste and season with salt and pepper.
Rinse the spinach, drain, then stir it into the soup. Turn off the heat, rest it under cover for 5 minutes.
Mix together the ingredients for the garlic yogurt.
Serve the soup with 1-2 spoonfuls of yogurt and some lemon juice squeezed on top.