Tear broccoli rabe or kale leaves into bite-size pieces and set aside. Chop the stems into about 1/4-inch pieces; set aside.
Heat 1/4 cup olive oil in a large pot over medium heat. Add garlic and onion, and season with salt and pepper. Cook, stirring occasionally, until lightly browned and sizzled at the edges, 4 to 6 minutes.
Add harissa (or tomato paste and a pinch of red-pepper flakes), and stir to coat in the oil. Cook until the harissa is a nice brick red color, the sugars start to caramelize and the oil turns a nice vibrant fiery orange color, about 2 minutes.
Add beans, and season with salt and pepper. Using a wooden spoon or spatula, crush a few beans to release their creamy interior.
Add the broth and reserved stems, and season with salt and pepper. Bring to a simmer and cook until you’ve reached your desired consistency (less time for a brothier soup, more time for a thicker stew), 15 to 20 minutes.
Add broccoli rabe or kale leaves and preserved lemon or lemon juice, and stir to wilt the greens. Season with salt, pepper and more red-pepper flakes if you want it spicier.
Serve with feta and parsley, and with eggs, if you like.