Activate the yeast: Combine warm water and milk in a large bowl. Stir in honey, sprinkle yeast on top, and let sit for 5-10 minutes until foamy.
Soak the grains: Combine oats, flaxseeds, sunflower seeds, sesame seeds, and millet in a small bowl. Pour in 1/4 cup of hot water, stir, and let sit for 5 minutes. Drain any excess liquid.
Build the dough: To the foamy yeast mixture, add softened butter, salt, soaked grain mixture, and whole wheat flour. Stir until combined. Gradually add bread flour, one cup at a time, mixing until a soft, slightly tacky dough forms.
Knead the dough: Using a stand mixer with dough hook, knead on medium-low speed for 8-10 minutes until smooth and elastic. If kneading by hand, knead on a lightly floured surface for 10-12 minutes.
First rise: Place dough in a lightly greased bowl, turning to coat. Cover with plastic wrap and let rise in a warm place for 1-1.5 hours, or until doubled in size.
Shape the loaf: Punch down the dough and turn out onto a lightly floured surface. Press into a rough rectangle, then roll tightly into a log. Pinch the seam and ends closed.
Second rise: Place the shaped loaf seam-side down into a greased 9x5 inch loaf pan. Cover loosely and let rise for 45-60 minutes, until the dough crowns about 1 inch above the pan rim. Preheat oven to 375°F (190°C).
Apply egg wash and topping: Gently brush the risen loaf with beaten egg and sprinkle with rolled oats and mixed seeds.
Bake the bread: Place on the center rack and bake for 35-40 minutes until deep golden brown. The internal temperature should reach 190-200°F (88-93°C). Tent with foil if browning too quickly.
Cool before slicing: Remove from the pan immediately and transfer to a wire rack. Cool for at least 45 minutes to 1 hour before slicing.