Preheat the oven to 350°. Grease and flour a 13 by 9-inch baking pan.
Combine the sugar, salt and flour in a large mixing bowl. Bring one stick butter, oil, 1/2 cup cocoa and 1/4 cup water to a boil in a saucepan. Add to the flour mixture.
Beat together the eggs, baking soda, buttermilk and 2 teaspoons vanilla. Add to the chocolate mixture, mix well, and pour into the prepared pan. Bake for 25 minutes.
While the cake is baking, make the icing by melting 1 stick softened butter in the 3 tablespoons cocoa and milk over low heat. Bring the mixture to a boil, then remove from the heat. Stir in the confectioner's sugar. Slowly mix in the nuts and the 1 teaspoon vanilla. Take the cake from the oven, and when it cools a bit cover it with miniature marshmallows. Pour the warm icing over the cake and the marshmallows. Cool the cake before serving.