Prepare the Garlic and Onions: In a large pot, heat the olive oil over medium heat. Add the diced onion and whole garlic cloves. Cook, stirring occasionally, until the onions are translucent and the garlic is fragrant, about 5 minutes.
Toast the Almonds: Add the blanched almonds to the pot and toast for 2-3 minutes, until they are lightly golden.
Add Broth and Seasonings: Pour in the chicken or vegetable broth. Stir in the smoked paprika, cayenne pepper, and season with salt and black pepper to taste. Bring the mixture to a boil, then reduce heat and simmer for 20 minutes.
Make the Croutons: While the soup is simmering, preheat your oven to 375°F (190°C). Toss the sourdough bread cubes with melted butter and spread them out on a baking sheet. Bake for 10-15 minutes, or until the croutons are golden brown and crisp.
Blend the Soup: After the soup has simmered, remove it from the heat and let it cool slightly. Use an immersion blender to blend the soup until smooth, or transfer it to a countertop blender in batches if necessary.
Finish with Cream: Return the blended soup to the pot (if using a countertop blender), and place it over low heat. Stir in the heavy cream and adjust the seasonings if needed. Warm the soup through, but do not let it boil after adding the cream.
Serve: Ladle the soup into bowls, top with a generous amount of sourdough croutons, and garnish with chopped parsley.