Rinse lentils, discarding any broken or odd looking ones, as well as any loose skins that float to the top of the water. Place lentils in a large, heavy bottomed pot with the two halved garlic cloves, bay leaf and tablespoon of olive oil. Fill pot with water until it is about 1 and 1/2 inches over the lentils. Cover and bring to a boil over high heat, then lower to a simmer for 40 minutes.
While the lentils are boiling, make the sofrito: saute the chorizo in one tablespoon of olive oil in a small saucepan over medium high heat until it has rendered it's fat; about 2-3 minutes. Remove chorizo with a slotted spoon and set aside. If the chorizo was dry and didn't render much fat, add the remaining tablespoon of olive oil. In the same saucepan, saute the onion and sliced garlic until softened, about 5-6 minutes. Add paprika and saute for 30 seconds more, then use a ladle to transfer two or three ladles full of lentils to the saucepan. Swirl to get all the paprika and chorizo bits from the bottom of the pan, then add the contents of the pan to the larger pot of lentils.
Stir in salt. Bring lentils back to the boil, lower to a simmer, cover and cook for 15 to 30 minutes more, or until the lentils are tender and the broth has thickened. Taste for salt again and adjust as needed. Serve hot. For extra protein, Mom sometimes will crack one egg per person into the soup to poach for 3-4 minutes. Carefully scoop out lentils into bowls and top with the egg.
OPTIONAL VEGETARIAN VERSION: Bring lentils, all garlic, onion, bay leaf, 2 tablespoons of olive oil and paprika to a boil, cover and reduce to a simmer. After 40 minutes, peel one large or two small potatoes and slice thinly and add to pot with a 1/2 teaspoon of salt. Bring back to the boil, cover and simmer for another 15 minutes, then add 2-3 handfuls of baby spinach and cook for 10 more minutes. Taste for salt and adjust before serving.