Set aside four sprigs of watercress to use as a garnish, then finely chop half of the rest. Tip the unchopped watercress into a saucepan of lightly salted, boiling water and cook for 5 minutes. Drain, reserving the cooking water. Allow the watercress to cool slightly, then tip it into a blender or food processor with 1 cup of the reserved cooking water and blend to a purée.
Melt the butter in a saucepan. Add the onion and cook gently, stirring occasionally, for 5 minutes.
Sprinkle the flour over the onion and stir for 2 minutes, without letting it colour. Gradually add the milk and another 1 cup of the reserved cooking water. Bring to the boil, then reduce to a simmer for 5 minutes, stirring constantly. Season with salt and pepper.
Add the puréed watercress, the chopped raw watercress and the sour cream or crème fraîche to the milk mixture. Stir together well and taste for seasoning. Keep warm.
To make the garlic toast fingers, toast the bread on both sides, then rub with the garlic. Cut into thin slices.
Serve the soup garnished with the reserved sprigs of watercress and the garlic toast fingers.