In a small bowl, combine the lukewarm milk and sugar. Sprinkle the yeast over the milk mixture and let it sit for about 5-10 minutes until it becomes frothy.
In a large mixing bowl or the bowl of a stand mixer, combine the flour and salt. Make a well in the center and add the eggs and the yeast mixture once it’s frothy. Mix on low speed until the ingredients start to combine.
Knead the dough for about 8-10 minutes on medium speed until it becomes smooth and elastic.
With the mixer on low, gradually add the room-temperature butter, a few pieces at a time. Continue mixing until the butter is fully incorporated.
Transfer the dough to a lightly greased bowl, cover it with plastic wrap, and let it rise in a warm space until it has doubled in size, approximately 1-2 hours.
After the dough has risen, punch it down to release any air bubbles. Divide the dough into three equal pieces. Roll each piece into a long rope, then braid them together.
Cover the shaped dough and let it rise again for about 30-45 minutes.
Preheat your oven to 375°F (190°C). Brush the top of the brioche with the beaten egg.
Bake the brioche for 25-30 minutes, or until it’s golden brown and sounds hollow when tapped on the bottom.
Remove the brioche from the oven and allow it to cool in the pan for about 10 minutes before transferring it to a wire rack to cool completely.