In a small saucepan, bring the milk just to a simmer.
Pour the milk over the butter, sugar and salt in a stand mixer or other large mixing bowl.
Stir to melt the butter and dissolve the sugar and salt.
Sprinkle the yeast over the warm water. Stir and let stand for about 10 minutes until foamy.
Add the yeast mixture to the warm butter and milk mixture in the bowl. Mix in the eggs and yolk.
If using a stand mixer, add all of the flour at once and use the dough hook attachment to bring the dough together. Alternatively, mix in the flour a cup at a time by hand.
Transfer the dough to a lightly floured surface and knead until smooth. You should not need to add any more flour at this point. The dough will become very elastic and silky.
Place the dough in a large oiled bowl. Cover with plastic or a damp tea towel and let rise for 2 hours in a warm spot.
Punch the dough down and let rise for 30 more minutes.
Punch down and divide the dough into 3 equal pieces for 1 large braided loaf or 6 pieces for 2 smaller loaves.
Form each piece into smooth balls and let rest under a towel for 5 minutes.
Roll each ball into a rope, 24-inches long for the large strands or 12 to 16-inches for smaller strands.
Braid the strands together and pinch together the ends and tuck under the loaf or loaves.
Place the braid(s) on a parchment-lined baking sheet. Cover with plastic and let rise for 30 minutes.
Preheat the oven to 375°.
Whisk together the remaining egg with the teaspoon of water. Brush this glaze on the braid(s) and sprinkle with any desired toppings like pearl sugar, almonds or seeds.
Bake the large loaf for about 25 minutes and slightly less for smaller braids. You want them to be golden brown but not get too dark.
Cool the Egg Braids completely before slicing and serving. Delicious with butter and jam or used for sandwiches or toast!