Nutrition per serving may change if servings are adjusted.
3 cups sugar
2/3 cup unsweetened cocoa powder, preferably Dutch-process
1/4 teaspoon salt
1 1/2 cups low-fat milk
2 tablespoons butter
1 tablespoon canola oil
1 teaspoon vanilla extract
Line the bottom and sides of an 8-inch square baking pan with a sheet of aluminum foil. Coat with cooking spray.
Whisk sugar, cocoa and salt in a large (3 1/2-quart) heavy saucepan. Slowly stir in milk. Place the saucepan over medium heat and bring to a boil, stirring continuously with a wooden spoon. Once the mixture comes to a boil, stop stirring. Boil, without stirring, until the fudge reaches the soft-ball stage (when a small amount dropped into ice water forms a very soft ball) or 234°F on a candy thermometer, about 10 minutes. Remove from the heat and add butter, oil and vanilla but do not stir. Let cool to lukewarm, about 45 minutes.
Stir the fudge vigorously with a wooden spoon until it begins to thicken and just loses its gloss, 1 to 2 minutes. Quickly pour into the foil-lined pan and spread evenly; let cool. Invert onto a cutting board, remove the foil and cut the fudge into 36 squares.
Make Ahead Tip: Stored wrapped in plastic at room temperature for up to 1 week.