In a medium pot over medium, heat the oil until rippling, about 1 minute. Add the onions and cook, stirring occasionally, until translucent, 7 or 8 minutes.
When the onions have softened, stir in the tomatoes and cover. Cook the tomatoes, stirring occasionally, until they begin to break down completely, about 6 minutes.
When the tomatoes have cooked down, add the lentils, carrot, cilantro, garlic, spices and salt. Top with 4 cups of warm water and cover. Cook the soup, stirring occasionally, until all the lentils are starting to fall apart and the vegetables have become soft, about 25 minutes.
If desired, pulse the soup in a blender once or twice until the texture is half smooth and half chunky. Serve with a flatbread like muufo or over rice, if desired. Maraq misir can be stored in the fridge for up to 5 days or frozen for up to 3 months.