Whole milk gives vichyssoise a rich consistency, without the fat of cream.
Coarsely chop leeks; place in bowl of cold water. Let stand 5 minutes to rid them of dirt and sand; lift out of water; drain in colander.
Spray bottom of small stockpot with olive-oil spray; place over low heat. Add leeks and garlic; cover and cook, stirring occasionally, until leeks are wilted, about 12 minutes.
Cut 2 potatoes into small chunks; add to leeks. Slice 3 carrots into 1/4-inch-thick rounds; add to vegetables along with stock, salt, pepper, and 2 cups water. Cover partially, raise heat to high, and bring to a boil. Reduce heat to medium low; cook until vegetables are tender, 15 to 20 minutes. Remove from heat, stir in milk, and puree in blender until smooth. Let stand until cool; refrigerate until cold.
Meanwhile, finely julienne remaining 2 potatoes and 2 carrots; place in a small pot of boiling water. Boil until just tender, 2 to 3 minutes. Drain; transfer to ice-water bath until cool. Drain; add carrots and potatoes to pureed soup. To serve, divide soup among 6 bowls, and garnish each with snipped chives.
Use a blender, not a food processor, to puree this soup, or it will become gummy.