01 - In a large bowl, combine flour, sugar, salt, and instant yeast until evenly mixed.
02 - Add warm milk, softened butter, and egg to the dry ingredients. Mix until a soft, shaggy dough forms.
03 - Knead the dough by hand or stand mixer for 8 to 10 minutes until smooth, elastic, and passes the windowpane test.
04 - Place the dough in a lightly greased bowl, cover with plastic wrap or a clean towel, and let rise in a warm, draft-free area for 1 hour until doubled in size.
05 - Punch down the risen dough and divide into 8 equal portions. Roll each piece into a smooth, tight ball and arrange on a parchment-lined baking tray.
06 - Cover the shaped dough balls loosely and let rest for 30 minutes until slightly puffed.
07 - Heat vegetable oil in a deep pot or fryer to 340°F, using a kitchen thermometer to maintain accurate temperature.
08 - Fry the donuts in batches of 3 to 4, turning occasionally with a slotted spoon, until deep golden brown on all sides, about 2 to 3 minutes per batch.
09 - Transfer fried donuts to a wire rack lined with paper towels. Allow to cool completely before filling.
10 - Whip cold heavy cream to soft peaks using a hand mixer or stand mixer. Add sweetened condensed milk, powdered milk, and vanilla extract, then continue whipping until stiff peaks form.
11 - Transfer the prepared cream to a piping bag fitted with a round tip. Make a small incision in the side of each cooled donut and pipe cream generously into the center.
12 - Roll filled donuts in powdered sugar until thoroughly coated. Serve immediately while fresh for optimal texture.