Add warm water and honey to the bowl of a stand mixer fitted with a dough hook. Sprinkle in the yeast and let it stand until it begins to look foamy, about 10 minutes.
In a large bowl, whisk together the flours and the salt. Add one cup of the flour mixture to the yeast mixture and mix on low until combined. Add 4 more cups, one at a time, and knead until combined, about 30-45 seconds. Knead on medium-low until dough pulls away from the sides of the bowl, about 1-2 minutes. Add the remaining 1/2 cup flour and continue to knead until smooth and elastic, about 6 minutes.
Pour the melted butter into a large bowl and coat all sides. Transfer the dough to the bowl, tossing to coat all sides in butter. Cover with plastic wrap and place in refrigerator overnight.
Remove the dough from the refrigerator and let rise in a warm spot until it doubles in size, about 1-3 hours.
Butter two large baking sheets or spray with nonstick cooking spray. Punch down dough. Transfer dough to lightly floured work surface. Pat dough into a rectangle and cut into 12 equal pieces, about 3 1/2 ounces each.
Working with one piece at a time while others are covered with a damp towel or plastic wrap, roll the dough into an 18-inch long rope. Make a U shape with the rope and cross over the ends at the bottom of the U to form a pretzel. Transfer to the prepared sheets and cover with a towel. Repeat with remaining dough. Let pretzels rise for 15 minutes on trays before baking.
Preheat oven to 450 degrees. Fill a large, wide pot with water. Bring to a boil. Slowly add baking soda.
Reduce the water to a simmer and slowly add 3-4 pretzels to the simmering water. Poach for 30 seconds, and then remove with a slotted spoon to prepared sheets. Repeat with remaining pretzels. Brush pretzels with beaten egg and water mixture. Sprinkle with salt, caraway or everything bagel seasoning.
Bake until golden brown, about 12-15 minutes, rotating trays halfway through baking. Remove from oven. Let cool for a few minutes. Enjoy while still warm.