Preheat oven to 350°F. In the bowl of a stand mixer with a dough hook attachment, add water, honey, and yeast. Proof until foamy, about 10 minutes. Add eggs, butter, salt, and just enough flour until the dough comes together and pulls away from the sides of the bowl.
Knead for up to 10 minutes to form a smooth dough. Transfer to a large, lightly oiled bowl. Cover with a damp towel or plastic wrap and move to a warm place. Allow the dough to rise for 1 hour, until doubled in size. Meanwhile, prepare 2 sheet trays with parchment paper. After first rise, turn and fold dough and leave to rise a second time for another 1 hour.
Divide dough into 2 equal pieces. To make a 6 strand braid, divide each ball into 6 equal portions. Roll each piece of dough into logs of roughly equal widths and lengths (about 1" by 12"). Pinch logs of dough at top and follow instructions for 6 strand braid (see pictures above).
Loosely cover braided challahs with a damp cloth and leave to rise for 20 minutes until doubled in size.
Bake bread approximately 30 minutes until internal temperature is between 190° and 205°. Brush the bread with the egg wash and return to the oven for 5 minutes. Remove and allow to completely cool before slicing.
If you want a loaf that has seeds, then you will want to brush the egg wash over the raw dough and sprinkle with seeds just prior to baking. Since the egg wash goes on in the beginning of the bake, your challah will be slightly darker.