01 - In the bowl of a stand mixer fitted with a dough hook, combine the flour, sugar, yeast, and salt until well blended.
02 - Add the eggs and lukewarm milk to the dry mixture. Mix on low speed until a shaggy, rough dough forms and all flour is incorporated.
03 - Increase to medium speed and knead for 5 minutes until the dough begins to smooth out and develop structure.
04 - Gradually add the softened butter cubes, a few at a time, mixing thoroughly after each addition. Continue kneading for 10 minutes until the dough becomes glossy, elastic, and pulls cleanly away from the bowl sides.
05 - Shape the dough into a ball and place in a lightly greased bowl. Cover and let rise in a warm area for 1 to 1.5 hours until doubled in size.
06 - Gently deflate the dough and transfer to a lightly floured surface. Divide into three equal portions, roll each into a rope, and braid together. Place the braided loaf into a buttered 9x5-inch loaf pan.
07 - Cover loosely and let rise for 45 minutes until puffy and nearly doubled in volume.
08 - Preheat the oven to 350°F.
09 - Whisk together the egg yolk and milk. Gently brush the egg wash over the entire surface of the brioche.
10 - Bake for 25 to 30 minutes until deep golden brown and a skewer inserted in the center emerges clean.
11 - Let cool in the pan for 10 minutes, then transfer to a wire rack to cool completely before slicing.