Warm the milk to 105–115°F (warm but not hot). Add it to a large mixing bowl or the bowl of a stand mixer and stir in the granulated sugar and active dry yeast. Let sit for 5–10 minutes, until the mixture looks foamy and creamy on top. If it does not foam, discard and start again with fresh yeast and properly warmed milk.
1 cup whole milk, 2 1/4 teaspoons active dry yeast, 1/3 cup granulated sugar
Whisk the eggs, melted butter, and salt into the foamy yeast mixture until combined. Add 3 1/2 cups of the all-purpose flour and stir with a wooden spoon or use a dough hook on low speed until a shaggy, sticky dough forms. If the dough is still very wet and clinging heavily to the bowl, add more flour 2 tablespoons at a time. Aim for a soft, slightly tacky dough that pulls away from the sides but gently sticks to your finger.
2 large eggs, 6 tablespoons unsalted butter, 1 teaspoon fine sea salt, 3 1/2-4 cups all-purpose flour
Turn the dough out onto a lightly floured surface or keep it in the mixer with the dough hook. Knead by hand for 6–8 minutes or with the mixer on medium-low for 5–6 minutes, until smooth, stretchy, and slightly springy. A small piece of dough should stretch thin without tearing right away (windowpane stage).
Form the dough into a ball and place in a lightly greased bowl, turning once to coat. Cover with a clean kitchen towel or plastic wrap and let rise in a warm, draft-free spot for 1–1 1/2 hours, or until doubled in size.
While the dough rises, prepare the caramel. In a small saucepan over medium heat, combine the brown sugar, butter, and heavy cream for the caramel topping. Stir gently as it melts and comes together. Bring to a gentle simmer and cook for 2–3 minutes, stirring, until smooth and slightly thickened. Remove from the heat and stir in the salt and vanilla. Pour the caramel into a greased 9×13-inch baking pan, tilting the pan to coat the bottom evenly. Set aside to cool slightly.
1 cup light brown sugar, 1/2 cup unsalted butter, 1/2 cup heavy cream, 1/4 teaspoon fine sea salt, 1 teaspoon pure vanilla extract
In a small bowl, mix the very soft butter, brown sugar, cinnamon, nutmeg (if using), and a pinch of salt until it forms a smooth, easily spreadable paste.
1/2 cup unsalted butter, 1 cup light brown sugar, 2 tablespoons ground cinnamon, 1/2 teaspoon ground nutmeg, 1 pinch salt
Once the dough has doubled, gently punch it down to release excess air and turn it out onto a lightly floured surface. Roll into a rectangle about 12×18 inches and roughly 1/4 inch thick. If the dough springs back, let it rest for 5 minutes and roll again.
Spread the cinnamon filling evenly over the dough, leaving about a 1/2-inch border along one long edge so you can seal the roll. Starting from the opposite long edge, roll the dough into a tight, even log.
Using a sharp serrated knife or unflavored dental floss, slice the log into 12 even rolls, about 1 1/2 inches thick. Place the rolls cut side down onto the caramel-lined pan, spacing them evenly. They should have room to expand during the second rise.
Cover the pan loosely and let the rolls rise for 30–45 minutes, or until puffy and touching. For an overnight version, cover tightly with plastic wrap and refrigerate for up to 12–14 hours. In the morning, let the rolls sit at room temperature for 30–45 minutes before baking.
Preheat the oven to 350°F (175°C). Bake the rolls for 25–30 minutes, or until golden brown on top and the centers register about 190°F on an instant-read thermometer. If the tops brown too quickly, tent the pan loosely with foil for the last 5–10 minutes of baking.
Let the rolls cool in the pan for about 5 minutes. Place a large rimmed baking sheet or serving platter upside down over the pan. Using oven mitts, carefully flip the pan and platter together in one motion. Lift off the pan, allowing the caramel to cascade over the rolls. Serve warm; sprinkle with flaky sea salt if you like a salted caramel finish.