Heat the oil in a large saucepan. Add the onions, carrots and fennel and cook over medium-low heat for 8 to 10 minutes, until the onions start to brown. Stir occasionally with a wooden spoon. Add the garlic and cook for 1 more minute.
Meanwhile, rinse and pick over the lentils to make sure there are no stones in the package.
Add the tomatoes, lentils, chicken stock, curry powder, thyme, salt, and pepper to the pan. Raise the heat to bring to a boil, then lower the heat and simmer covered for about 40 minutes, until the lentils are tender. Check occasionally to be sure the liquid is still simmering. Remove from the heat and allow the lentils to sit covered for another 10 minutes. Add the vinegar, season to taste, and serve hot.