Preheat the oven to 450 degrees F. Make the broth: Cut off the dark green tops of the leeks and put in a large pot along with the fennel stems and fronds; add 8 cups water. Bring to a boil, then reduce the heat to medium, cover and simmer 20 minutes.
Meanwhile, halve the remaining leeks lengthwise, then thinly slice and rinse. Put the carrots and half each of the sliced leeks and diced fennel on a foil-lined baking sheet. Season with salt and pepper, coat with cooking spray and toss. Roast until golden, about 25 minutes.
Meanwhile, melt the butter in a Dutch oven or pot over medium-high heat. Add the remaining leeks and fennel and cook, stirring, until soft, about 4 minutes. Add the potatoes and 2 cups of the prepared broth. Cover and cook until tender, 15 minutes. Add 4 more cups broth and the milk; bring to a boil. Working in batches, transfer to a blender and puree; season with salt and pepper.
Ladle the soup into bowls; top with the roasted vegetables and chopped herbs. Spread the ricotta on the toasted bread and season with pepper; serve with the soup.