Sort the lentils by removing any stray beans or foreign pebbles that are sometimes present. Rinse lentils in a colander with cool water.
Over medium heat, in a large stockpot, bring the water to a boil and add the salt. After the water begins to boil, add the rinsed lentils and lower the heat. Cover and simmer until the lentils are almost tender, about 15 minutes.
While the lentils are cooking, heat oil in a large skillet over high heat. Add carrots, celery, and tomatoes and sauté for about 5 minutes. Add onion and sauté until translucent, about 2 minutes. Add garlic and sauté for 1 minute. Reserve.
Add sautéed vegetables and simmer for 15 minutes. Add spinach and mix. Salt to taste.
Ladle the soup into a big bowl and serve with your favorite homemade bread like bolillo or a slice of cheesy cornbread.