there are differences
specialcharacters changes the string and converts " ' < > and other into html code < and something like that. they show up on the screen equal, but are different strings
addslashes just adds / before ' and " so they could be used inside a string for inserting into db for example
hope it clarifies it

it's hard to explain even in my nature language, and harder in english for me
hope it clarifiys