Preheat your oven to 350°F (175°C). Generously grease a 10-12 cup Bundt pan with baking spray or butter and flour, ensuring you get into all the crevices. In a large mixing bowl, combine the dry cake mix and instant pudding mix. Whisk them together to break up any lumps and ensure even distribution.
Add the eggs, sour cream, vegetable oil, and water to the dry ingredients. Using an electric mixer on medium speed, beat for exactly 2 minutes. The batter will be very thick and luxurious. In a small bowl, toss the chocolate chips with a tablespoon of flour until coated. This simple step prevents them from sinking to the bottom during baking. Gently fold the floured chocolate chips into the thick batter using a spatula.
Pour the batter into your prepared Bundt pan, smoothing the top with your spatula. Trust me, take a moment to tap the pan firmly on the counter a few times. This releases any large air bubbles for a more even crumb. Place the pan in the center of your preheated oven.
Bake for 48-52 minutes. Do not open the oven door before the 45-minute mark. The cake is done when a long toothpick or skewer inserted into the center comes out with just a few moist crumbs (not wet batter). The top will be firm to the touch and will have just started to pull away from the sides of the pan.
Let the cake cool in the pan on a wire rack for a full 25 minutes. This is non-negotiable for proper structure. After 25 minutes, place a serving plate over the pan, and with confidence, flip it over. The cake should release easily. Allow it to cool completely on the plate before frosting, about 1-2 hours.
While the cake cools, make the frosting. In a large bowl, beat the softened cream cheese and butter together with an electric mixer on medium-high speed for 2-3 minutes, until completely smooth and fluffy. Tip from me: Scrape down the bowl halfway through. Add the vanilla and salt. Gradually add the sifted powdered sugar, one cup at a time, beating on low speed until incorporated after each addition. Once all sugar is in, beat on medium-high for 1-2 minutes until light and spreadable.