Heat the oil in a 6 quart Dutch oven over medium heat. Add the onions and a generous pinch of salt and cook, stirring occasionally, until the onions are softened and just starting to brown, 6 to 8 minutes. Add the curry powder or garam masala and cook, stirring constantly, until fragrant, 30 seconds to 1 minute.
Add the broth, tomatoes and their juices, lentil, celery, carrot, garlic, cayenne, 3/4 teaspoon salt and 2 cups water. Bring to a boil over high heat, stirring frequently to keep the lentil from sticking; skim any foam as necessary.
Reduce the heat and simmer uncovered, stirring occasionally, until the lentils, carrots and celery are tender, 35 to 40 minutes. Season to taste with salt.