Measure out all the ingredients and have them ready before you start.
Add sugar and water to a medium saucepan, stir to combine.
Caramelize the sugar: Bring to a boil over high heat, then reduce the heat to medium. When the sugar mixture starts to change its color from white to light yellow, reduce the heat to medium-low. Now you need to keep an eye on sugar and don't let it burn. Cook the sugar mixture until it's medium or deep amber in color. Don't stir the sugar mixture, don't swirl the pot, the mixture should bubble all the time while cooking (don't let it cool). Don't try to taste the caramel, it's extremely hot! When the sugar changes its color, it's ready - the sugar is caramelized. This process will take about 6-8 minutes (if you have a less powerful burner or you've cooked it over lower heat than I did, it can take longer, about 10-12 minutes).
Add the butter to the pot. Be careful, the caramel sauce will bubble furiously. Whisk in the butter until combined.
Next, whisk in the cream and vanilla. Add the cream in a slow, thin stream, whisking constantly.
Let the sauce cook for about a minute, then add salt, whisk in, and take the pot off the heat.
The caramel sauce will be runny at this point, but it will thicken considerably while cooling.
Leave the sauce to cool - it will need at least 40 minutes to cool to the room temperature and thicken.
Enjoy!