If the file name has a - in the middle of the file, there's no need to escape (i.e. prefix with a \) the -, it's just an ordinary character, like a, or p.
For files which begin with a -, how to delete these is covered in the rm man page
Quote:
Originally Posted by man rm
To remove a file whose name starts with a `-', for example `-foo', use
one of these commands:
rm -- -foo
rm ./-foo
|
Suffice it to say, if you invoke rm with a --, anything after the -- is treated as a filename.