Place the lukewarm (about 110F to 115F) water in a small bowl, sprinkle with yeast and a pinch of sugar, stirring to combine. Set aside at room temperature until a frothy layer forms on top, 5–10 minutes.
Mix the flour and salt into the large bowl of a stand mixer and whisk on low speed to combine. Make a well in the center of the flour and add 2 eggs, 2 egg yolks, honey, sugar, and oil. Whisk on low to form a slurry.
Pour the yeast mixture over and combine on medium speed until a shaggy dough forms. Using the dough hook attachment, knead the dough on low speed for 6–8 minutes. If the dough is still very sticky, add flour 1 tablespoon at a time until it is soft and smooth.
Lightly oil your hand, place dough in a large oiled bowl, and turn to coat the surface, cover with plastic wrap and place somewhere warm to let the dough rise until it has doubled in size, 45 to 1 ½ hour.
On a lightly floured work surface, divide the dough into 3 to 6 equal pieces, depending on the type of braid you are making. Next, roll the pieces of dough into long ropes, about 16 inches long. Gather the ropes and pinch them together at the top.
To make simple 3-strand challah, braid the ropes together like braiding hair and squeeze the ends together when complete. Place the braided loaf on a parchment-lined baking sheet and sprinkle with flour. Cover loosely with a kitchen towel and let rise in a warm place until puffed up, about 1 hour.
Preheat the oven to 350°F. Whisk the egg yolk with 1 tablespoon of cream and brush all over the challah, inside the cracks, and down the sides of the loaf. If you like, sprinkle poppy, za'atar, or sesame seeds onto the challah before putting it in the oven.
Place the baking sheet on top of another baking sheet; this will prevent the bottom crust from browning too much. Bake until challah is golden brown, about 25–35 minutes, rotating pan halfway. Set braided bread aside on a cooling rack to cool.