The correctly punctuated sentence is:
C. I have snacks, a bottle of water - and a towel in my bag.
However, the use of the dash in this sentence could be improved by replacing it with "and" for better clarity:
"I have snacks, a bottle of water, and a towel in my bag."
The other sentences have punctuation issues: A. The correct punctuation would use a semicolon or a period instead of a hyphen. B. "of rain." should be "due to rain." and there is an error with the double period.