i believe i found the problem. in powershell you have to escape the '$' with a backtick. if you don't powershell looks at it as a variable within the double qoutes. hope this helps some one else in the future.
@prikryl, thanks for the reply. when i use the winscp gui i connect just fine, no problems at all. there is a '$' in the password. i am using the latest 5.5.1 (build 3970).
after looking through the forums i have tried the following in powershell without success:
orignal password is: blah$blah
password = "blah" + "%24" + "blah"
password = "blah" + %24 + "blah"
$a = 24; password = "blah" + $a + "blah"
$a = "{0:x}" -f 36; password = "blah" + $a + "blah"
nothing seems to work for me, any ideas on how to pass the '$' character as UTF-8 hex in powershell or how to make the pass actually work.