Pour warm milk, sugar and yeast into a large mixing bowl, stir together and let sit 10-15 minutes or until yeast is bubbly. Add the butter and egg and mix together again.
Add salt and 1 cup of flour and mix. Continue adding flour a tablespoon at a time until dough forms a ball and pulls away from sides of the bowl.
Pour dough out onto a floured surface and knead for 3- 5 minutes, incorporating more flour if needed. Dough should not be sticky, but more of a soft and tacky feel.
Place dough in greased bowl, cover with a cloth and let rise until doubled in size, anout 1½ hours.
Punch the dough down and roll onto a floured surface. I try for a rectangle that is about 9x11 inches.
Spread the room temperature butter into a thin and even layer, leaving about ½ inch on the bottom of the dough untouched so it can hold together. Sprinkle with the brown sugar, being careful not to tear the dough while you spread it. Then top with cinnamon.
Working from the longer end of the dough, tightly roll it up into a log. Place your hands at each end of the side and give it a gentle squeeze to help compact the dough. It may have stretched out a bit during the rolling process so this brings it back together. Cut the dough into 6 rolls total. I like to make little markings first to help make sure they are all about the same size.
Place the rolls in a greased 9x4 loaf pan or an 8-9″ round pan. It’s OK if all of the rolls are touching.
Place in a warm spot, cover and let rise again until doubled in size. This takes about 45-60 minutes depending on how warm it is. You can always put them in your oven with the light on to help with warmth, but make sure you take them out to preheat your oven.
Preheat oven to 375 F. Bake for 12-18 minutes or until the tops are a light golden brown. While they cool, make the frosting.