Place the flour into the bowl of a stand mixer fitted with a dough hook. Add the salt, sugar, yeast, milk, and eggs and mix on low speed for 2 minutes. Increase to medium speed and mix for 6-8 minutes until the dough is glossy and elastic.
Add the softened butter and mix for about 4 minutes, scraping down the bowl a few times to fully incorporate the butter. The dough will be very soft.
Transfer the dough to a large plastic bowl and cover with plastic wrap. Chill for 7-8 hours or overnight, until firm.
Butter 2 8.5x4.5 loaf pans (or a 12-count standard muffin tin). Set aside. Lightly flour a large work surface.
Remove the dough from the fridge. Place it on the work surface and gently knead it a few times to remove the air. Divide it in half with a bench knife or serrated knife, then divide one half into 8 equal pieces (or 6 equal pieces for rolls). Shape each piece into a smooth ball by placing it into a cage formed by the palm your hand and the table and moving your hand around in a circular motion, using a bit of flour if needed. Place the balls of dough 2x4 in each loaf pan (or one ball in each muffin tin cavity.)
Cover with plastic wrap or a tea towel and proof in a warm place for about 2 hours, or until the dough has risen to just above the rim of the pans.
Preheat your oven to 375 degrees F. Bake the bread in the heated oven for 25-35 minutes, or until a wooden skewer inserted into the center comes out clean (don't skip this test - the sugar and butter in the dough will brown the bread quickly regardless of whether or not it is fully baked.) You can cover the bread with foil after 15 minutes to keep it from browning too much if you prefer a lighter loaf.
Remove the bread from the oven and brush with melted butter if desired. Cool for 10 minutes in the pans, then carefully remove the brioche to a wire rack to cool. Serve warm or at room temperature.