Butter the sides of a large heavy saucepan or Dutch oven.
Combine the first 5 ingredients (sugar, buttermilk, butter, corn syrup, baking soda) in the buttered saucepan and cook over medium-low heat, stirring constantly until the butter melts and the sugar dissolves. Use a pastry brush dipped in hot water to wash down any sugar crystals on the sides of the pan.
Increase the heat to medium and bring to a boil. Do not stir while the syrup is boiling. Continue to cook until the syrup reaches the soft-ball stage (234–240°F).
Remove from the heat and add vanilla. Do not stir until the syrup cools to 200°F.
Using an electric mixer on medium speed, beat the fudge until it thickens and is no longer glossy.
Stir in the walnuts.
Pour the mixture into a buttered 8x8-inch pan.
Wait until the fudge cools completely then cut into squares.