Cook the bacon in a large saucepan or Dutch oven over medium heat until crisp, 5 to 6 minutes. Transfer to a paper towel-lined plate.
Spoon off and discard all but 2 tablespoons of the drippings. Return the pan to medium heat. Add the onion and cook, stirring occasionally, until soft, 5 to 7 minutes.
Add the garlic, paprika, and red pepper and cook, stirring, for 2 minutes.
Stir in the corn, broth, and half-and-half and bring to a boil. Reduce heat and simmer for 15 minutes.
Transfer half the soup to a blender and puree until smooth. Return to the pot and stir in ½ teaspoon each salt and pepper.
Divide the soup among bowls and top with the scallions and bacon. Serve with bread, if desired.