Activate the Yeast: In a small bowl, dissolve the yeast in the warm milk. Let it sit for about 5 minutes until it becomes frothy.
Mix Dry Ingredients: In a large mixing bowl, combine the flour, sugar, and salt.
Combine Wet Ingredients: Add the eggs and softened butter to the yeast mixture. Mix until well combined.
Form the Dough: Gradually add the wet ingredients to the dry ingredients, mixing continuously. Knead the dough until it becomes smooth and elastic, about 8-10 minutes. You can use a stand mixer with a dough hook attachment for this step.
First Rise: Place the dough in a lightly oiled bowl, cover with a clean kitchen towel, and let it rise in a warm place for about 1-2 hours, or until it has doubled in size.
2. Prepare the Cream Filling
Heat Milk and Cream: In a medium saucepan, combine the milk and heavy cream. Heat over medium heat until it just begins to simmer.
Mix Sugar and Cornstarch: In a separate bowl, whisk together the sugar and cornstarch. Add the egg yolks and mix until smooth.
Temper the Eggs: Gradually pour the hot milk mixture into the egg mixture, whisking constantly to prevent the eggs from curdling.
Cook the Mixture: Return the mixture to the saucepan and cook over medium heat, stirring constantly, until it thickens and starts to bubble.
Add Butter and Vanilla: Remove from heat and stir in the butter and vanilla extract. Transfer the cream filling to a bowl, cover with plastic wrap (pressing it directly onto the surface to prevent a skin from forming), and let it cool completely.
3. Shape and Fry the Donuts
Roll Out the Dough: Once the dough has risen, punch it down to release the air. Turn it out onto a floured surface and roll it to about ½ inch thickness.
Cut the Donuts: Use a dough cutter or a sharp knife to cut out donut shapes. You can use a round cutter for traditional donuts or get creative with different shapes.
Second Rise: Place the cut donuts on a baking sheet lined with parchment paper. Cover with a kitchen towel and let them rise for another 30-45 minutes.
Heat the Oil: In a heavy-bottomed pot or deep fryer, heat the vegetable oil to 350°F (175°C). Use a deep-frying thermometer to maintain the correct temperature.
Fry the Donuts: Carefully place the donuts in the hot oil, a few at a time. Fry until golden brown, about 1-2 minutes per side. Use a slotted spoon to remove them from the oil and place on a wire cooling rack to drain excess oil.
4. Fill and Serve
Fill the Donuts: Once the donuts are cool enough to handle, use a piping bag with a round tip to fill them with the cooled cream filling. Insert the tip into the side of each donut and gently squeeze until filled.
Dust with Sugar: Lightly dust the filled donuts with powdered sugar before serving.
Tips and Variations
Flavor Variations: Add different flavors to the cream filling, such as chocolate, coffee, or fruit purees.
Alternative Fillings: Try filling the donuts with jam, Nutella, or a citrus curd for a different twist.
Toppings: Instead of powdered sugar, you can glaze the donuts with chocolate or vanilla glaze, or sprinkle with colored sugar or sprinkles.