Mix warm water, yeast, and a pinch of sugar in a bowl and let it sit for 5-10 minutes until foamy.
In a large mixing bowl, combine flour and salt, then add the yeast mixture.
Knead the dough by hand or with a stand mixer for about 8-10 minutes until smooth and elastic.
Cover the dough with a damp towel and let it rise for 1.5 to 2 hours until doubled in size.
Punch down the dough and transfer it to a floured surface.
Divide the dough into equal-sized portions and shape each into a tight ball by folding the edges underneath.
Place the shaped rolls on a baking sheet lined with parchment paper, leaving space between them.
Cover loosely with plastic wrap or a towel and let them rise for another 30-45 minutes.
Preheat the oven to 425°F (220°C) and place a pan of hot water on the bottom rack for steam.
Score the tops of the rolls with a sharp knife or lame for expansion.
Lightly brush with egg wash for shine or spray with water for a crustier texture.
Bake for 15-20 minutes until golden brown and crisp on the outside.
Remove from the oven and let the rolls cool slightly on a wire rack.
Serve warm or at room temperature as dinner rolls, sandwich rolls, or for dipping in soups.
Store leftovers in an airtight container or freeze for later use.