In a large mixing bowl, combine the flour, salt, sugar, and instant yeast. Whisk these dry ingredients together until fully combined.
In a separate bowl or measuring cup, mix the warm milk, warm water, and melted butter. Gradually pour the wet ingredients into the dry mixture, stirring with a wooden spoon or using a stand mixer with a dough hook attachment. Continue mixing until a sticky, soft dough forms.
If kneading by hand, transfer the dough to a lightly floured surface and knead for about 8-10 minutes until smooth and elastic. If using a stand mixer, knead with the dough hook on medium speed for about 5 minutes.
Place the dough in a lightly greased bowl and cover it with a clean kitchen towel or plastic wrap. Let it rise in a warm area for about 1 to 1 ½ hours, or until it has doubled in size.
After the dough has risen, punch it down to release the air. Turn the dough out onto a lightly floured surface and roll it out to about ½ inch thickness. Using a round cutter or the rim of a glass (about 3-4 inches in diameter), cut out circles of dough. Reroll any scraps and repeat until you’ve used all the dough.
Dust a baking sheet with cornmeal and place the dough rounds on it. Sprinkle the tops of the rounds with more cornmeal, then cover them with a kitchen towel. Allow them to rise again for about 30 minutes.
Heat a skillet or griddle over medium-low heat. Carefully transfer the dough rounds to the skillet, cooking them in batches if necessary. Cook the muffins for about 7-8 minutes on each side until they are golden brown and firm to the touch. Make sure to cook them slowly to ensure the centers are fully done.
Once the muffins are cooked, transfer them to a wire cooling rack. Allow them to cool slightly before splitting them open with a fork (this helps preserve the signature nooks and crannies). Toast the muffins if desired, and serve with butter, jam, or your favorite toppings.