3 1/2 cups All-Purpose Flour, or bread flour, plus more for kneading
Place flour, yeast, and salt in a large bowl. Whisk to combine. Set aside.
Heat milk and water in a small saucepan until hot to touch (do not boil). Take off heat and add butter and sugar. Stir until the butter melts in to the milk mixture (a few lumps are okay).
Make a well in the flour mixture and pour in milk mixture; mix with a rubber spatula to combine. Turn dough out onto a floured surface. Knead for 6-8 minutes, gradually adding flour until the dough is no longer sticky.
Place dough in a large, greased bowl, turning once to grease both sides. Place the bowl in a warm, undisturbed spot and cover with a clean dishtowel. Allow the dough to rise until it doubles in size, 60-90 minutes.
Turn dough out onto a lightly floured surface. Knead the dough briefly. Lightly grease a loaf pan. Form the dough in the shape of a rectangular log the length of your bread pan, then plop the dough into the pan. Place the pan in a warm, undisturbed spot and cover with a clean dishtowel. Let rise for 1 hour before baking.
Preheat oven to 350°F.
Bake for 30-35 minutes, or until the top is a dark golden brown. Allow the bread to cool for 30 minutes in the pan before transferring to a wire rack to cool completely. Serve warm with a generous helping of butter.
Store the completely cooled loaf of bread in an airtight bag for up to 5 days.