In a small saucepan set over medium low heat, warm the milk, water and butter until butter is melted. Set aside to cool slightly to 120-130° F.
In the bowl of a stand mixer fitted with a dough hook, combine 2 cups of the flour, yeast, sugar and salt. Add the warm milk mixture, followed by the eggs and mix until combined.
With the mixer on medium low speed, continue to add more flour ¼ cup at a time until the dough clears most of the bowl but is still sticky to the touch. Continue to knead dough on medium speed until smooth and elastic, a few minutes more.
Place dough in a greased bowl and cover with plastic wrap. Let rise in a warm place until doubled, about 1 hour.
Gently punch down dough and knead a few times. Cover with plastic wrap to keep from drying out and let rest for about 10 minutes.
Divide the dough into 10 equal pieces and roll into an oblong roll 4 ½ inches long. Place on a sheet pan lined with parchment paper. Let rise until doubled again, about 30 minutes. Meanwhile, preheat oven to 400° F.
Brush rolls with egg wash and sprinkle with poppy seeds, if desired. Let bake until golden, about 10-12 minutes.
Buns are best the day they are baked but will keep in an airtight container at room temperature for up to 3 days.