Wash the apples thoroughly to remove any wax coating. Dry completely. Insert wooden sticks firmly into the top center of each apple. Place on a parchment-lined baking sheet and refrigerate to keep them cold—this helps the caramel set faster.
In a heavy saucepan, melt the butter over medium heat. Stir in brown sugar, corn syrup, and sweetened condensed milk. Cook, stirring constantly, until the mixture reaches 240°F (soft-ball stage) on a candy thermometer. This takes about 10–15 minutes.
Remove from heat, stir in vanilla and a pinch of salt. Let the caramel cool for about 5–10 minutes to thicken slightly.
Hold each chilled apple by the stick and dip into the caramel, twirling to coat evenly. Let excess caramel drip off. Immediately roll in your chosen toppings while the caramel is still sticky. Place back on the parchment-lined tray.
Allow the caramel apples to cool at room temperature for at least 30 minutes, or until the caramel is firm. If desired, drizzle with melted chocolate after the caramel sets.