Preheat oven to 350°.
Line two dozen muffin tins with paper liners; set aside.
In a large mixing bowl, combine flour, sugar, salt and baking soda; set aside.
In a medium saucepan over medium heat, bring cocoa, oil, half-and-half and butter to a boil.
Remove pan from heat.
Gradually stir in dry ingredients and whisk until well-combined.
In another bowl, combine eggs, buttermilk and vanilla.
Gradually add the egg mixture to the batter and mix well to combine.
(Batter will be very thin).
Fill paper-lined muffin cups about three-fourths full.
Bake at 350° for 15-20 minutes, or until a toothpick inserted in center comes out clean.
Cool cupcakes in pans for 10 minutes before removing to wire racks to cool completely.
Ice cupcakes with Caramel Icing.