Prepare a glass 9x13 baking dish by coating it in butter. Or, add a layer of aluminum foil with a few inches overhanging the dish. Then spray with non-stick spray. Set aside.
In a large bowl, combine both types of chocolate, room temperature butter, and marshmallow fluff. If adding nuts, do so now. Set aside.
In a large saucepan, combine the sugar and evaporated milk. Over medium heat, bring the mixture to a rolling boil. Stirring constantly and continue to boil for 4 minutes.
After 4 minutes, slowly pour the mixture over the chocolate in the bowl in 4 to 6 intervals, stirring constantly until smooth.
Pour the mixture into the prepared 9x13 baking dish. Allow the fudge to come to room temperature somewhere undisturbed. Cover and place the dish into the refrigerator for a few hours or overnight until the fudge has set. Bring the fudge back to room temperature before cutting and serving.
The fudge will keep for 1 to 2 weeks at room temperature or around 2 to 3 weeks in the refrigerator. It can also be frozen (see notes below). Enjoy!
Notes
*This homemade chocolate fudge can also be frozen. Tightly wrap the cooled fudge in plastic wrap, then a layer or two of foil. Place in a freezer-safe ziplock bag or container with as much air as possible removed. The fudge will keep well for 2-3 months in the freezer. *If your fudge looks like it has separated, is hard, or is grainy, return it back to the pan. Turn the heat on low and add a few teaspoons of water or heavy whipping cream. Add one at a time, mixing well after each addition. Usually, around 6 to 8 teaspoons is all you need. Stir continually while the chocolate heats back up slowly. Before long, the fudge should be smooth and the ingredients will be incorporated back together properly.