Make the tangzhong by whisking the flour and water together in a small saucepan until smooth.
Cook over medium-low heat, stirring constantly, until it thickens into a paste, about 3–5 minutes. Remove from heat and let it cool to room temperature.
Mix the bread flour, sugar, salt, and yeast in a large bowl.
Stir in the warm milk, egg, the cooled tangzhong, and the butter, mixing until a shaggy dough forms.
Knead the dough by hand or with a mixer for about 8–10 minutes until it becomes smooth and elastic.
Place the dough in a greased bowl, cover, and let it rise for 1 to 1 ½ hours, or until doubled in size.
Punch down the dough and divide it into 2 equal portions.
Shape each into a ball, then roll out and fold into tight logs.
Place them seam-side down in a greased loaf pan.
Cover and let rise again for 45–60 minutes, until puffy.
Preheat the oven to 350°F.
Bake for 30–35 minutes, until golden brown and the loaves sound hollow when tapped with your fingernail. If the top browns too quickly, loosely tent with foil during the last 10 minutes.
Let cool in the pan for 10 minutes, then transfer to a wire rack to cool completely before slicing.