Heat the oil in a large saucepan over medium-high heat then add the onion, carrots and celery and cook until tender, about 6-7 minutes, stirring frequently. Season with salt and pepper to taste.
Stir in the garlic, cumin and cinnamon. Heat until fragrant, about 30-60 seconds. Add the lentils and fry for 1-2 minutes to slightly toast. Pour in the chicken or vegetable stock, water and lemon juice then bring to a boil. Reduce the heat to low and simmer until the vegetables are tender and the mixture soup-like, for about 20 minutes.
Blend the mixture until smooth and creamy; season with salt, pepper and lemon juice to taste before serving warm, with croutons if desired.