1In a large, heavy bottomed saucepan, melt the butter and add the shallots, leek, and all the onions. Cover and cook over low heat, stirring frequently to prevent burning, until the onions are soft and have turned deep golden brown, 20 – 30 minutes.
2Add the chicken stock and simmer uncovered until the onions are very soft, about another 20 minutes.
3Transfer the soup to a blender and blend until very smooth (do this in batches if necessary). Return the soup to a clean pan, add the cream, and bring to a boil. Simmer the soup a few minutes to thicken slightly, if necessary. Season with salt and pepper to taste.
4To make the shallot garnish: sprinkle the sliced shallots with the flour, then toss in a fine strainer to thoroughly coat the shallots and shake off the excess flour. Fill a saucepan no more than 1/3 full with oil. Heat the oil to 375 degrees F (if not using a thermometer, fry a few pieces to test first.) Carefully drop the shallots in the oil and dry, stirring to prevent sticking. The shallots should cook slowly, getting light brown after 45 seconds. When golden brown (no darker than a brown paper bag) remove from the oil with a slotted spoon and drain on paper towels. The garnish may be made up to 8 hours ahead and stored in an airtight container. To serve, ladle the hot soup into warm bowls and top with a spoonful of crispy shallots and a pinch of fresh chives.
5In a pinch, you can use french fried onion rings (in a can) for garnish.