Heat oil in a large, heavy soup pot. Add onions, garlic, and carrots and cook over moderate heat until onions are limp. Add lentils, broth, and water, and bring to a boil. Lower heat, cover, and simmer for 30 minutes, or until lentils are very soft. Stir in more warm water if soup becomes too thick. Pour soup through colander, catching liquid that drains off in a large bowl. Return liquid to soup pot. Puree 1/3 of lentil mixture in food processor or blender or through food mill; return to pot. Stir in remaining whole-lentil mixture. If desired, season with salt and pepper. Makes 12 servings.