Finely chop the onion, garlic, celery and carrot.
Heat the olive oil in a saucepan over a medium-low heat. Add the onion, celery and carrot and gently sauté for about 5 minutes. Add the garlic and cook for another 2–3 minutes, until the vegetables begin to soften.
Add the balsamic vinegar and oregano or marjoram and stir for a few seconds. Add the chopped tomatoes and vegetable stock.
Bring to the boil, then reduce the heat, cover and simmer for about 20–25 minutes, until the vegetables are completely tender and the flavours have developed.
Turn off the heat and stir in the parsley and basil.
Using a stick blender, blitz the soup until you have a thick, textured consistency. You can blend it more thoroughly if you prefer a smoother soup.
Add the drained lentils and a little more stock if needed and reheat gently before serving. Taste and adjust the seasoning with salt and freshly ground black pepper.