1 (15 oz) can cannellini beans, drained and rinsed
8oz orecchiette pasta
1/2cup finely grated Parmesan cheese, plus more for serving
4cups fresh baby spinach
Juice of 1/2 lemon
Fresh basil or parsley, chopped, for garnish
Salt and black pepper, to taste
Instructions
Heat olive oil in a large soup pot or Dutch oven over medium heat. Add onion, carrot, and celery; season with salt and pepper to taste and cook for 5-7 minutes until softened. Stir in garlic, tomato paste, and red pepper flakes, and cook for 1-2 minutes until fragrant.
Stir in fire-roasted tomatoes, broth, and beans. Season with a pinch more of salt and pepper. Bring to a gentle boil, then reduce the heat and simmer for 10 minutes to let the flavors meld.
Ladle out about 2 cups of the soup (including some beans and vegetables) and blend until smooth. Return the purée to the pot and stir to combine (this gives the soup a naturally creamy texture).
Bring the soup back to a gentle simmer and add the orecchiette. Cook uncovered, stirring occasionally, until the pasta is just al dente, about 10-12 minutes. If the soup thickens too much, stir in a splash of hot water or extra broth to loosen.
Lower the heat to medium-low. Gradually stir in ½ cup grated Parmesan until melted and the broth turns creamy. Avoid boiling after adding the cheese.
Stir in the spinach and cook until just wilted, about 1 minute. Add lemon juice and adjust seasoning with salt and pepper.
Ladle the soup into bowls and top with extra Parmesan, chopped basil or parsley, and a drizzle of olive oil if desired.