Heat the olive oil in a large, heavy bottomed pot over medium heat. Add the onions and sauté for at least 10 minutes, stirring them around frequently. They shouldn't sizzle too loudly! This is a slow-cooking kind of process, so turn the heat down if you think they’re cooking too fast.
When the onions are quite soft, add the thyme, tarragon, and paprika and saute for another 5 minutes, stirring here and there. Add the garlic and stir until very fragrant, about 1 minute. Add the carrots and celery and cook for another 8-10 minutes, until all vegetables are soft.
Add the can of tomatoes and stir to coat vegetables. Cook out and simmer the tomatoes for about 5 minutes. Add the drained lentils and stir to coat in the vegetables, oil and tomatoes. Add a splash of the stock and scrape any browned bits on the bottom of the pot.
Add remaining vegetable stock to the pot. Give the whole mix a good stir and bring to a boil. Once boiling, return pot to a simmer, cover with a lid and allow to cook for 25-30 minutes or until the lentils are soft. Check in on the pot once in a while and give it a stir. Season the finished soup liberally with salt and pepper. Stir in the parsley, if using.
Serve the soup hot.