Heat oil in a heavy large saucepan over medium-high heat. Cook onion, garlic until tender for about 4-5 minutes. Be sure to keep stirring to prevent burning.
Add tomato paste, cumin, turmeric, cinnamon, paprika and cayenne pepper. Be sure to keep stirring to prevent burning (for about 1 minute).
Add broth. Be sure to scrape the bottom, add carrots, lentils, water and bring to a simmer.
Reduce to low heat, cover the pot partially and cook for about 15-20 minutes or until the lentils are soft. Stir frequently to prevent burning. Turn off the heat when the lentils are fully cooked.
Use a hand blender or any high-speed blender, puree the lentils until smooth, adjust the seasoning with salt and pepper.
If the broth is too thick, add about ¼ cup of extra broth. Ladle soup into bowls. Garnish with parsley, serve and enjoy.