Ingredients:

  • 3.5 cups (440g) all-purpose flour
  • 0.25 cup (50g) granulated sugar
  • 2.25 tsp (7g) active dry yeast
  • 0.5 tsp (3g) salt
  • 0.75 cup (180ml) whole milk, lukewarm
  • 2 large eggs, room temperature
  • 6 tbsp (85g) unsalted butter, softened
  • vegetable oil for frying
  • 2 cups (480ml) whole milk
  • 0.5 cup (100g) granulated sugar
  • 0.25 cup (30g) cornstarch
  • 4 large egg yolks
  • 2 tbsp (28g) unsalted butter
  • 1 tsp (5ml) pure vanilla extract
  • pinch of salt
  • 1 cup (120g) granulated sugar
  • 1 tbsp (8g) ground cinnamon

Instructions:

  1. Whisk sugar, cornstarch, and salt in a saucepan. Slowly whisk in milk and egg yolks until smooth. Heat over medium, stirring constantly until the mixture thickens and bubbles. Remove from heat, stir in butter and vanilla. Transfer to a bowl, cover with plastic wrap touching the surface, and refrigerate for at least 4 hours.
  2. Combine lukewarm milk, sugar, and yeast; let sit for 5 minutes until foamy. Add eggs, salt, and flour. Mix until a shaggy dough forms. Add softened butter one tablespoon at a time. Knead until the dough is smooth and elastic (about 7-10 minutes by hand). Cover and let rise in a warm spot for 1 to 1.5 hours, or until doubled in size.
  3. Roll dough to 1/2 inch (1.3cm) thickness. Cut into rounds. Let rounds proof for another 30 minutes.
  4. Heat oil to 350°F (175°C). Carefully drop donuts in batches. Fry for 2 minutes per side until they reach a mahogany-gold color. Remove and drain on a wire rack for 2 minutes.
  5. While still warm, toss donuts in the cinnamon-sugar mixture. Use a small knife or chopstick to poke a hole in the side of each donut. Fit the chilled Bavarian cream into a piping bag and squeeze into the center until the donut feels heavy and full.