In a large bowl, combine the warm milk, yeast, and sugar. Let stand for 5-10 minutes until foamy.
Stir in the salt and softened butter until the butter is mostly melted.
Beat in the eggs one at a time until well combined.
Gradually add 3 ½ cups of flour, mixing until a soft dough forms. If the dough is too sticky, add more flour, ¼ cup at a time, until it pulls away from the sides of the bowl.
Turn the dough out onto a lightly floured surface and knead for 5-7 minutes, or until smooth and elastic.
Place the dough in a lightly greased bowl, turning to coat. Cover with plastic wrap or a damp cloth and let rise in a warm place for 1 to 1 ½ hours, or until doubled in size.
Punch down the dough and divide it into 12 equal pieces. Shape each piece into a ball.
Place the dough balls into a greased 9×13 inch baking pan, about 1 inch apart.
Cover the pan and let the rolls rise for another 30-45 minutes, or until puffy.
Preheat your oven to 375°F (190°C).
Bake for 15-20 minutes, or until golden brown.
Brush the tops of the warm rolls with melted butter. Serve immediately.
Notes
For softer rolls, use milk instead of water.
Ensure your yeast is fresh for proper rising.
Room temperature ingredients help the dough rise better.
You can prepare the dough ahead of time and refrigerate it overnight. Let it come to room temperature before shaping.