Pre-heat the oven to 350°.
Mix together the sugar, oil, eggs, and vanilla.
Whisk together the flour, baking soda, salt, and cinnamon.
Mix the dry ingredients together with the wet ingredients, adding in the apples as well; it will make a very stiff batter.
Nuts are an optional add-in at this point. I highly recommend chopped walnuts, but save back 1/4 cup for the top of the cake.
Pour the batter into a well greased bundt cake pan.
Bake at 350° for about 45 minutes to an hour, or until a toothpick inserted in the cake comes out clean.
Once you remove the cake from the oven, let it sit in the bundt pan for about 10 minutes.
Remove the cake from the bundt pan, and allow to cool completely.
Meanwhile, mix up the ingredients for the frosting, including the cream cheese, salted butter, vanilla extract, caramel extract, powdered sugar, and milk.
Mix well, making sure there are no lumps; the frosting should easily pour from a measuring cup.
Once the cake has cooled, pour the frosting evenly over the top of the cake. It will run down the sides of the cake.
Sprinkle walnuts over the frosting. Then slice and serve!