Brown the sausage: Heat a large pot or Dutch oven over medium heat.
Add the sausage and cook, breaking it into small pieces, until browned and crisp around the edges, 6–8 minutes. If the pan looks dry, add the olive oil. Spoon off excess fat, leaving about 1 tablespoon in the pot.
Build the flavor base: Add the diced onion and a pinch of salt.
Cook until softened and lightly golden, 4–5 minutes. Stir in the garlic, red pepper flakes, oregano, and fennel seeds. Cook 30–60 seconds, just until fragrant.
Simmer the potatoes: Pour in the chicken broth (and water if using).
Scrape up any browned bits from the bottom. Add the potatoes and a pinch of salt. Bring to a boil, then reduce to a gentle simmer.
Cook until the potatoes are tender but not falling apart, about 10–14 minutes depending on thickness.
Add the greens: Stir in the kale. Simmer 3–4 minutes, until the kale is tender and bright green. If you like your kale very soft, give it a couple more minutes.
Finish with cream: Lower the heat and stir in the cream.
Warm gently; avoid boiling to keep the soup silky. Taste and season with salt and black pepper. If the soup tastes flat, add a squeeze of lemon to lift the flavors.
Serve: Ladle into bowls and top with freshly grated Parmesan if you like.
Serve with crusty bread for dipping.