Sauté the base: Heat olive oil in a large pot over medium heat. Add chopped onion and garlic, cook until softened (about 5 minutes).
Add the veg: Stir in carrots, celery, and potato. Cook for another 5 minutes, stirring occasionally.
Add lentils and seasoning: Mix in the lentils, herbs, and vegetable stock. Bring to a boil.
Simmer: Reduce heat and simmer for 25–30 minutes, or until lentils and vegetables are tender.
Blend (optional): For a smoother texture, blend part or all of the soup using a stick blender.
Finish and serve: Season with salt and pepper. Stir in spinach or parsley if using. Serve hot with crusty bread or toast.