In the bowl of a stand mixer, whisk together 1¼ cups (156g) flour, sugar, salt, yeast, and baking soda by hand.
In a medium saucepan, heat buttermilk, water, and butter over medium-low heat, stirring occasionally, until an instant-read thermometer registers 120°F (49°C) to 130°F (54°C). Add warm buttermilk mixture to flour mixture; using the paddle attachment, mix at medium-low speed until combined. Reduce mixer speed to low, and gradually add 2½ cups (313g) flour, mixing just until combined and stopping to scrape sides of bowl.
Switch to the dough hook attachment. Knead at low speed until a soft, somewhat sticky dough forms, 10 to 12 minutes, stopping to scrape sides of bowl and dough hook; add up to remaining ⅓ cup (42g) flour, 1 tablespoon (8g) at a time, if dough is too sticky. Turn out onto a lightly floured surface, and shape into a smooth round.
Lightly oil a large bowl. Place dough in bowl, turning to grease top. Cover and let rise in a warm, draft-free place (75°F/24°C) until doubled in size, 30 to 45 minutes.
Spray a 9x5-inch loaf pan with cooking spray.
Punch down dough, and let stand for 10 to 15 minutes. Lightly press dough into a 10x8-inch rectangle, short side closest to you. Fold top third of dough to center, pressing with heel of hand to seal. Stretch and fold top corners to center, pressing with heel of hand to seal. Starting with top edge, fold dough, about 1½ inches at a time, pressing to seal each time with heel of hand before folding again. Repeat until you have a tight cylinder, about 3 times. Place dough, seam side down, in prepared pan. Gently press dough flat to make sure it’s even and fills pan. Cover and let rise in a warm, draft-free place (75°F/24°C) until almost doubled in size, 20 to 30 minutes.
Preheat oven to 350°F (180°C).
Bake until an instant-read thermometer inserted in center registers 205°F (96°C), 35 to 40 minutes. Let cool in pan for 10 minutes. Remove from pan, and let cool completely on a wire rack.