Melt butter and set aside.
In a medium sized bowl, mix together yeast, 2 tsp sugar and warm water. Set aside. Mixture will get foamy and smell fantastic.
In a small bowl, mix together warmed milk and 1/2 cup flour until smooth and lumps are gone.
In the bowl of a stand mixer with whisk attached, whisk egg yolks and whole eggs on high speed until pale and fluffy, about 3-4 minutes.
Whisk in salt and vanilla until combined. With mixer on low speed, gradually add 1 cup of sugar. Mix on medium speed until sugar is completely dissolved into mixture.
Mix in melted butter until combined. Mix in yeast mixture until combined.
Switch to bread hook. Add flour and mix until combined. The dough should start to come away from the sides of the bowl. If not, add more flour, one tablespoon at a time, and mix after each addition. You don’t want to add too much.
When dough starts to come away from sides of the bowl, mix on medium for about 10 minutes.
Transfer dough to a large bowl that’s been lightly coated with a non-flavoured oil, such as grapeseed oil. Don’t use olive oil as the flavour is too strong. Turn the dough over so all of it is lightly coated with oil
Cover dough with plastic wrap and a tea towel; let rise until doubled in size – about an hour or two. The warmer your kitchen, the less time it will take. Mine took 2 hours.
Punch down dough and bunch it back up in the bowl. Recover and let rise again for another hour.
Preheat oven to 300°F.
Punch down dough one last time. Divide dough into 4 pieces. The dough will be slightly sticky and very elastic. The less you handle it, the more tender it will be.
Form dough into 4 balls about 4” across. Place 2 balls on a parchment lined baking sheet. Cover balls with plastic wrap and a towel and let rise 1/2 hr while your oven is heating up.
Bake loaves for 10 minutes at 300°F, then turn oven temperature down to 275°F and bake for 20 minutes longer, or until golden brown.
Let loaves cool. Serve slices spread with vanilla buttercream icing.