Preheat oven to 350 degrees F. Spray a rimmed baking sheet lightly with cooking spray.Cut bread into 1-inch cubes and place in a large bowl.In a small bowl, combine olive oil, garlic, parsley, thyme, salt, and pepper. Pour oil mixture over bread in bowl and use your hands to toss until bread is evenly coated. Spread croutons in a single layer on the baking sheet and bake for about 15 minutes until lightly browned and crisp.Melt butter in a large pot or Dutch oven over medium heat. Add the onion and cook, stirring occasionally, until it starts to soften, about 3 minutes. Add the leek and cook, stirring occasionally, for 3 minutes. Stir in the garlic and cook for 30 seconds.Add the chopped potatoes and cook, stirring, for 5 minutes to allow them to release some of their starches. Season with salt and pepper; stir in broth.Cover and bring to a simmer; simmer for 15-20 minutes until potatoes are tender. Turn off the heat and use an immersion blender to puree the soup to desired smoothness. (Alternatively, you can carefully transfer the soup in batches to a blender to puree and then return it to the pot.)Stir in half n half. Taste, and add additional salt and/or pepper as desired. Serve soup topped with Garlic Herb Croutons.