Step 1: Prepare the Dough - In a small saucepan, gently heat the whole milk until warm but not boiling. Remove from heat and add the unsalted butter and honey, stirring until dissolved. Allow to cool to about 110°F (43°C) before adding yeast. Sprinkle yeast over milk mixture and let sit for about 5-10 minutes until frothy.
Step 2: Mix the Dry Ingredients - In a large mixing bowl, whisk together the bread flour, whole wheat flour (if using), and fine sea salt. Make a well in the center and pour in the frothy yeast mixture.
Step 3: Combine and Knead - Stir with a wooden spoon until it begins to come together. Transfer to a floured surface and knead for about 8-10 minutes until smooth and elastic. Add more bread flour if too sticky.
Step 4: First Rise - Form into a ball and place in a lightly greased bowl. Cover with a kitchen towel and let rise in a warm place until doubled in size, about 1-2 hours.
Step 5: Shape the Muffins - Punch down the dough and transfer to a floured surface. Roll out to about 1-inch thickness and cut out muffins with a round cutter (about 3 inches in diameter). Place on a baking sheet dusted with semolina flour or cornmeal.
Step 6: Second Rise - Cover the cut muffins with a towel and let rise for about 30-45 minutes until puffed up slightly.
Step 7: Cook the Muffins - Preheat a non-stick skillet or griddle over low to medium heat. Transfer muffins to skillet and cook for about 5-7 minutes on each side until golden brown and cooked through.
Step 8: Cool and Enjoy - Transfer cooked muffins to a cooling rack. Allow to cool completely before splitting open. Toast and serve with butter, jam, or your favorite toppings!