- Prepare the Dough: In a large bowl, whisk together the flour, sugar, and salt. In a separate small bowl, dissolve the yeast in the warm milk and water. Let stand for 5 minutes, or until foamy. 
- Combine Wet and Dry Ingredients: Add the melted butter and egg to the yeast mixture. Pour the wet ingredients into the dry ingredients and stir until a shaggy dough forms. 
- Knead the Dough: Turn the dough out onto a lightly floured surface and knead for 5-7 minutes, or until smooth and elastic. Alternatively, knead using a dough hook attachment on a stand mixer. 
- First Rise: Place the dough in a lightly oiled bowl, turning to coat. Cover with plastic wrap and let rise in a warm place for 1-1.5 hours, or until doubled in size. 
- Prepare the Filling: While the dough is rising, prepare the filling by combining the softened butter, brown sugar, and cinnamon in a small bowl. Mix until well combined. 
- Shape the Bread: Gently punch down the risen dough. Turn it out onto a lightly floured surface and roll it into a 12x18 inch rectangle. 
- Add Filling: Spread the softened butter mixture evenly over the dough rectangle, leaving a small border on one long edge. 
- Roll and Seal: Starting from the opposite long edge, tightly roll the dough into a log. Pinch the seam to seal. 
- Cut and Arrange: Cut the log into 12 even slices. Place the slices cut-side up in a greased 9x13 inch baking pan. 
- Second Rise: Cover the pan with plastic wrap and let rise in a warm place for 30-45 minutes, or until the slices are puffy. 
- Bake: Preheat oven to 350F (175C). Bake for 30-35 minutes, or until golden brown. 
- Cool: Let the bread cool in the pan for 10-15 minutes before inverting onto a wire rack to cool completely. 
- Prepare Icing: While the bread is cooling, prepare the cream cheese icing. In a large bowl, beat together the softened cream cheese and butter until smooth. Gradually add the powdered sugar, beating until combined. Add milk or cream, one tablespoon at a time, until the desired consistency is reached. Stir in vanilla extract. 
- Ice and Serve: Once the bread has cooled, drizzle the cream cheese icing over the top. Slice and serve. 
- Optional Tips: For a richer flavor, use bread flour instead of all-purpose. Add chopped nuts, raisins or chocolate chips to the filling for extra texture and flavor. Instead of cream cheese icing, a simple glaze of powdered sugar and milk can be used. Store the baked bread tightly wrapped at room temperature for up to 3 days.