Combine warm water and yeast in a standing mixer or large bowl. Let it sit until dissolve for about 5 minutes.
Add in butter, followed by 3 cups of flour, sugar, and salt. Using the dough hook attachment, mix the dough on low speed until well combined. Change to medium speed and knead until the dough is smooth and pulls away from the side of the bowl, approximately 5-6 minutes. Add in enough additional flour (if needed) to make a soft dough. It’s best to add less flour.
Remove the dough from the bowl.
If mixing by hand, turn dough on a lightly floured surface and knead for 5 to 6 minutes or more or until dough is smooth.
Clean the large bowl, oil and place dough inside.
Cover loosely with a clean cloth and let rise in a warm, draft-free place for 1 to 2 hours or until doubled.
Punch the dough down and place on a lightly floured work surface.
Bring about 8 cups of water and the baking soda to a boil in a saucepan about 5 -6 quart.
Roll out each piece of dough into a long, thin rope about 22- 24-inch rope length. Make a U-shape with the rope, holding the ends of the rope, cross them over each other and press onto the bottom of the U in order to form the shape of a pretzel. Then tightly pinch the dough at the seam to secure the dough from falling apart.
Let it lay onto the parchment-lined sheet pan.
Then gently place the pretzels into the pot of the boiling water, one at a time, for about 30 seconds, pretzels should be immersed in the water.
Quickly placed the wrapped pretzel in the boiling water for about 30 seconds – remove with a slotted spoon and place it on a paper to soak up any excess water from the pretzel.
Preheat the oven to 425 degrees F. Line baking sheet. Set aside. Repeat process with the rest of the pretzel.
Finally, brush each pretzel with the egg yolk mixture, and sprinkle with salt, sesame seeds, cinnamon sugar or spice of choice.
Bake for about 12-15 minutes or until golden brown, brush with melted butter and serve with ketchup, mustard or dipping sauce of choice.