Heat olive oil in a large pot until shimmering. Add onion, garlic, celery, and carrots and sauté until vegetables soften, about 5 minutes.
Add and Simmer
Stir in zucchini, yellow squash, cauliflower, and potato. Add thyme, bay leaf, salt, pepper, and vegetable broth. Bring to a boil, then reduce heat and simmer for 15–20 minutes.
Blend and Finish
Discard the bay leaf. Use an immersion blender to puree until smooth yet slightly textured. Stir in milk and cream and heat gently for 2–3 minutes.
Serve
Ladle into bowls and garnish with fresh parsley.
Notes
Prep note: Slicing zucchini slightly thicker prevented a grainy texture.Cooking note: Lowering to a gentle simmer stopped excessive broth evaporation.Storage note: Freezing in individual jars kept the soup silky after reheating.