Mix together ½ cup warm water and 1 package (¼ ounce) active dry yeast. Let sit for about 10 minutes until bubbles form and the mixture thickens slightly.
In a stand mixer with a paddle attachment, combine the yeast mixture with ½ cup warm milk, ? cup melted butter, ¼ cup sugar, 1 teaspoon salt, 1 large egg, and 3 ½ to 4 cups all-purpose flour. Add the flour gradually, about 1 cup at a time, until a soft dough forms.
Place the dough in a well-greased bowl and turn to coat. Cover tightly and let rise for 1 to 1 ½ hours until doubled in size.
Remove the dough and knead for 1–2 minutes, adding a little flour if needed to prevent sticking. Roll into a rectangle about 15 x 9 inches.
Spread ½ cup softened butter evenly over the dough.
In a small bowl, mix 2 tablespoons ground cinnamon and ¾ cup granulated sugar. Sprinkle evenly over the butter, then add ¾ cup walnuts if using.
Roll the dough tightly from the long side into a log and pinch the seam to seal. Slice into 12 rolls.
Place the rolls in a greased 9x13 baking dish. Cover and let rise for 30–60 minutes until nearly doubled.
Preheat the oven to 350°F.
Bake for 25–30 minutes until lightly browned.
While baking, mix together 2 cups powdered sugar, 1 teaspoon vanilla extract, and 4 tablespoons milk until smooth.
Let the rolls cool slightly, then spread the glaze over the top.
Serve warm and enjoy.
Notes
Refrigerate the leftover cinnamon rolls covered for up to 1 week.