Combine warm milk and yeast in a small bowl; let sit until frothy.
Mix flour, sugar, and salt in a large bowl.
Add the yeast mixture and eggs to the dry ingredients.
Knead the dough until smooth and elastic, about 10 minutes.
Gradually incorporate softened butter, kneading until fully combined.
Cover the dough and let it rise in a warm place until doubled in size, about 1-2 hours.
Punch down the dough and turn it out onto a floured surface.
Divide into three equal portions and shape into strands.
Braid the strands together and place in a greased loaf pan.
Cover and let rise again until puffy, about 1 hour.
Preheat the oven to 350°F (175°C) and brush the loaf with egg wash.
Sprinkle with coarse sea salt before baking for 30-35 minutes.
Cool on a wire rack before slicing.