Heat the milk (either briefly in the microwave or in a saucepan on the stovetop) to 110-115℉.
Pour the warm milk into a large mixing bowl for stand mixer (or bowl you will use to mix the dough). Stir in the sugar and yeast. Let this sit for 5-10 minutes until foamy.
Stir in the beaten eggs, melted butter and salt. Mix to combine.
Add 2 cups of flour and mix using a dough hook, until combined. Add in the remaining 2 cups of flour. Continue to mix, kneading the dough for 5-7 minutes. The dough should be smooth and no longer stick to the sides of the bowl. If needed add additional flour 1 tbsp at a time until dough is no longer sticking to the sides of the bowl.
Once a ball of dough can be formed, remove dough from the mixing bowl. Coat a clean bowl with a small amount of oil (any kind) place the ball of dough in the bowl and turn to coat the dough in the oil also. Cover with a clean kitchen towel. Place the bowl in a draft free spot in the kitchen, an oven or microwave (that are turned off!) are good places. Let the dough sit and rise for about an hour until doubled in size.
Cook the sausages in a large skillet on the stovetop until browned. Remove from the skillet and set aside.
Once dough has risen, punch down, then remove the dough from the bowl and divide the dough into 12 equal pieces.
Working one at a time, using your fingers press out a piece of dough into a rectangular shape that is the same width as the sausages. Place the sausage on top and roll, then pinch where the dough meets. Place this seam side down onto a large baking sheet. Place kolaches about 1 inch apart from each other. Continue until all dough and sausages have been rolled.
Cover the baking sheet with a clean towel, and let rise again for another 45 minutes.
Preheat oven to 400℉.
In a small bowl combine the egg and milk or cream for the egg wash. Whisk together.
Brush the egg wash onto the tops of the kolaches.
Bake for 15-17 minutes until the tops of the kolaches are a golden brown color.
Remove from oven and let cool briefly before serving.