Heat the olive oil in a large stock pot set over medium heat. Add the onion, garlic, salt and pepper and cook until slightly softened and fragrant, about 3 minutes.Add the carrots and cauliflower florets, followed by the broth and water; bring to a simmer, cover and cook until the vegetables are fork tender, about 25 minutes.Reduce to a fine puree with the help of a stick blender or for a smoother consistency, carefully ladle the soup into a High-Speed Blender; process until smooth and creamy and return to stock pot.Add the milk and stir well; bring back to a simmer over medium heat then kill the heat and serve promptly.Garnish with a dollop of plain yogurt, a carrot ribbon, some fresh parsley, a pinch of freshly coarse ground black pepper, a drizzle of olive oil and a little bit of milk or heavy cream, if desired.