Warm the milk slightly until it’s lukewarm (not hot) to help activate the yeast.
In the bowl of a stand mixer fitted with the dough hook attachment, add the flour, instant yeast, and salt. Mix briefly to combine.
Pour the warm milk over the dry ingredients. Add the eggs, egg yolks, vanilla extract, and granulated sugar. Mix until a shaggy dough begins to form.
Turn the mixer to medium-low speed. With the mixer running, gradually add the butter a few pieces at a time. Continue kneading the dough for 10–15 minutes, or until it becomes smooth, elastic, and slightly tacky.
Cover the bowl with plastic wrap or a clean kitchen towel. Let the dough rise in a warm, draft-free spot for 1 to 1½ hours, or until doubled in size.
Turn the risen dough onto a lightly floured surface. Roll it out to about ½-inch thickness. Use a donut cutter or two round cutters (one large, one small) to cut out the donut shapes. Re-roll the scraps as needed.
Place the cut donuts on a parchment-lined baking sheet. Cover with a towel and let them rise for another 30 minutes, or until slightly puffy.
Heat oil in a deep fryer or heavy-bottomed pot to 350°F (175°C). Use a thermometer to keep the temperature steady for even frying.
Working in batches, carefully lower the donuts into the hot oil. Fry for about 1½ to 2 minutes per side, or until golden brown. Avoid overcrowding the pan.
Transfer the fried donuts to a paper towel–lined tray to drain excess oil. Let them cool slightly before coating with powdered sugar, dipping in glaze, or filling with your favorite cream or jam.
Enjoy your homemade brioche donuts fresh, warm, and fluffy—just like from a bakery!