Prepare pastry cream first as it will need to chill for several hours before being ready to use.
In a large bowl (or the bowl of a stand mixer), combine 2 cups (250g) of flour, yeast, sugar and salt and stir to combine.
Heat milk in the microwave in a microwave-safe dish until it’s reached a temperature between 110-115F (43-46C). Pour into flour mixture and stir until completely combined.
Add melted butter, eggs, and vanilla extract and stir until completely combined.
Gradually stir in remaining flour (you can do this with a wooden spoon or spatula or the dough hook attachment of a stand mixer) until your dough is clinging to itself and is slightly sticky/tacky to the touch, but not so sticky that it’s sticking to the sides of the bowl or your fingers. You may need more or less flour than is called for in the ingredients list and should judge based off of the texture of the dough.
Stir until dough is cohesive and smooth. Dough should not be dry; slightly tacky dough is ideal for soft donuts.
Transfer dough to a lightly oiled bowl and cover tightly with plastic wrap. Place in a warm, draft-free space and allow to rise until doubled in size (about 30-60 minutes).
Once dough has doubled in size, turn out onto a clean, lightly floured surface and roll or pat dough to be ¾” (2cm) thick. Use a biscuit cutter to cut out donuts and transfer to a parchment paper lined baking sheet, spacing donuts at least 1” (2.5cm) apart. Cover with a towel or plastic wrap and allow to rise until puffy and nearly doubled in size (about 30 minutes). While donuts are rising, you can begin to heat your oil.
Fill a medium-sized heavy-bottomed saucepan about 2-3” (5-8cm) deep with vegetable oil and fit a candy thermometer to the side (make sure the thermometer is suspended about halfway in the oil and is not touching the bottom of the pan). Turn stovetop heat to medium. Heat oil until you have a steady, consistent temperature of 350F (175C).
Fry donuts one at a time, carefully lowering them into the oil (I use a spider) and frying on each side until light golden brown on each side. Allow oil to return to proper temperature between donuts.
Remove donut from oil to a cooling rack or a paper towel lined plate. Allow to cool for several minutes before filling.
Fit a piping bag with a small round tip (I use a Wilton 12 tip) and fill with prepared pastry cream.
Pierce each donut halfway through with a sharp knife then insert the piping tip halfway into the donut and squeeze pastry cream to fill the donut. Repeat with remaining donuts.
Prepare glaze by combining heavy cream and chopped chocolate in a microwave-safe dish and heating in 20-second increments (stirring in between) until chocolate is melted. Dunk the top of each donut in glaze then allow to cool on cooling rack.
Donuts are always best served fresh but will keep in an airtight container in the refrigerator for up to 48 hours.