Preheat oven to 350°F (180°C). Grease and flour a 10-inch bundt pan or a deep 9×5-inch loaf pan. A deep pan works best because the batter rises beautifully and can overflow in a shallow one.
In a large bowl, cream the butter and sugar for 3-4 minutes, until light, fluffy, and pale. This step makes the cake soft and tender.
Mix in the sour cream until fully combined for a moist and rich cake.
Beat in the eggs one at a time, mixing well after each addition. Then stir in the vanilla extract.
In another bowl, whisk the flour, baking powder, and salt.
Add the dry ingredients to the butter mixture in three parts, alternating with the milk in two parts, starting and ending with the dry ingredients. Mix gently after each addition, just until the batter is smooth without overmixing.
In a small bowl, whisk the cocoa powder, hot water, and instant coffee until smooth. Divide the main batter roughly in half, then take a little more than one-third of the batter and mix it with the chocolate mixture. You should have more vanilla batter than chocolate batter.
Start with a layer of vanilla batter and spread it evenly in the pan. Then add a layer of chocolate batter and spread gently. Continue alternating the two until all the batter has been used. You'll usually end up with about three layers of each. Use a skewer or knife to swirl through the batter in gentle figure-eight motions. Don't overdo it, just enough to create pretty ribbons.
Bake for 50-60 minutes for a bundt pan or 55-65 minutes for a loaf pan, or until a toothpick inserted in the center comes out clean or with just a few moist crumbs.
Let the cake rest in the pan for 10 minutes, then invert onto a wire rack to cool completely. Dust with powdered sugar or drizzle with chocolate ganache before serving.