Heat the oil and melt the butter together in a large saucepan over medium heat.
Add the onions and cook stirring a few times until they begin to get translucent, add the minced garlic, jalapeno and grated ginger, and cook stirring until softened, about a couple of minutes.
Add the cumin, coriander, curry, turmeric and salt and cook stirring until the spices are fragrant, about 1 minute.
Add the canned diced tomatoes and their juices, the chicken (or vegetable) broth, the lentils and the chopped cauliflower florets.
Bring to a boil and then lower the heat to a simmer and simmer the soup for about 25 minutes, stirring often so that the lentils don’t stick to the bottom of the saucepan.
When the cauliflower and lentils are well cooked, add the 2 tablespoons of freshly squeezed lemon juice and the freshly ground pepper.
Transfer the soup in batches to a blender and purée until smooth. Pour the soup back into the saucepan and if desired you can adjust the consistency of the soup with more broth or water. Garnish the soup with the chopped cilantro.
Notes
Soup can be stored in the refrigerator for up to 5 days. To freeze the soup, store it in a freezer-safe container and freeze for up to 3 to 4 months. Thaw soup overnight in the refrigerator. Reheat soup over medium-low heat.