Combine the sugar, butter and salt in a medium saucepan and cook over medium heat, stirring occasionally, until dark amber, about 20 minutes.
Remove the pan from the heat and carefully pour in the cream and vanilla (it will bubble up). Set the saucepan over low heat and continue cooking, whisking, until smooth and the bubbling subsides, 2 to 4 more minutes. Remove from the heat and pour into a large glass measuring cup or bowl so the caramel is about 2 inches deep. Set aside, stirring occasionally, until cooled slightly and thick enough to coat a spoon, 12 to 15 minutes.
Line a rimmed baking sheet with parchment paper and coat with cooking spray. Insert a wooden stick into the center of each apple, about one-third of the way down. Holding an apple by the stick, dip it into the caramel and roll around to cover. Gently twirl the apple over the measuring cup, letting the excess caramel drip off, then turn it upside down and hold about 30 seconds to help set the caramel; place on the prepared baking sheet. Repeat with the remaining apples. Let set 15 minutes.