Microwave milk and butter in a bowl until butter is melted. Let cool until liquid feels warm to the touch (not hot)
In another bowl, whisk together 3 cups of flour and sugar.
In the bowl of electric mixer with dough hook attachment, add yeast and milk mixture. Stir with a spatula to combine. Add flour/sugar mixture and egg and beat on medium low until combined. If your dough is sticking to do side of your bowl continue adding flour 1/4 cup at a time until your dough forms a ball and it's pulling away from the sides. Mine usually takes about 3 1/4 cups of flour total. Continue beating on medium low speed for 5 minutes. Remove dough, form into a bowl and place in a greased bowl. Cover with a damp towel and let it rest in a warm place for 10 minutes.
While your dough is resting, make the filling by combining sugar, brown sugar and cinnamon in a bowl.
When dough is ready, roll out on a floured surface with a rolling pin. You want a large rectangle about 14x9 inches in size. Spread the softened butter all over your rolled out dough. Sprinkle the cinnamon sugar evenly over the butter. Tightly roll up the dough and pinch to seal the edges. Slice with a sharp knife or using dental floss into 12 cinnamon rolls.
Place the cinnamon rolls in a greased 9x13 baking baking pan. Cover with a damp towel and let rise in a warm place for 25 minutes.
Make the icing: In a bowl of your stand mixer beat cream cheese until creamy on medium low speed. Best in vanilla extract and powdered sugar 1/2 cup at a time until frosting comes together. If too thick add a splash of milk. Set aside until cinnamon rolls are cooled.
Bake the cinnamon rolls at 350F uncovered for 15-20 mins or until golden brown. Let cool for 5 mins. Spread frosting over the cinnamon rolls. Top with caramel sauce and pecans.