In a small bowl, dissolve the yeast in warm milk and let it sit for about 5 minutes until frothy.
In a large bowl, mix the flour, sugar, and salt.
Create a well in the center and add the yeast mixture, softened butter, and eggs.
Mix until a dough forms. Knead the dough on a lightly floured surface for about 8-10 minutes, until smooth and elastic.
Place the dough in a lightly oiled bowl, cover with plastic wrap, and let it rise in a warm place for about 1-2 hours, or until doubled in size.
In a medium saucepan, heat the milk and sugar over medium heat until the sugar is dissolved and the mixture is hot.
In a bowl, whisk together the egg yolks and cornstarch until smooth.
Gradually add the hot milk mixture to the egg yolk mixture, whisking constantly.
Pour the mixture back into the saucepan and cook over medium heat, stirring constantly, until it thickens and comes to a boil.
Remove from heat and stir in the butter and vanilla extract.
Transfer to a bowl, cover with plastic wrap, and let it cool completely.
Preheat the oven to 375°F (190°C).
Punch down the risen dough and turn it out onto a floured surface. Shape the dough into a round loaf.
Place the dough on a baking sheet lined with parchment paper.
Brush the top with the beaten egg for a golden finish.
Bake for 25-30 minutes, or until golden brown and cooked through.
Let the brioche cool completely on a wire rack.
Slice the cooled brioche in half horizontally.
Spread the cream filling evenly over the bottom half of the brioche.
Place the top half of the brioche over the cream filling.
Dust with powdered sugar before serving.
Enjoy your meal!