In the path part of the URL...
space - An unencoded
space is simply not allowed in a URL. It must be percent encoded as
%20. You should really do this yourself (explicitly) server-side if required. However, modern browsers implicitly do this for you. Whilst this shouldn't directly affect SEO (after all the word separating space is clearly in the URL), it is not good for useability as @Josh2012 states. So this could affect SEO indirectly. (If it's bad for the user; it's bad for SEO.)
+ - The plus is treated as a literal character in the path part of the URL. (However, it is an encoded space in the querystring part of the URL - which can lead to some confusion.) I have seen no evidence to suggest whether it is treated as a word separating character or not when used in the URL path. I can't see any logic in Google not treating it as a word separator, but it is not so clearly seen as a space by the user. I would not try to use the
+ (plus) as a word separating character in the path part of the URL. It is often seen encoded as
- - The hyphen is commonly used as a word separating character in the URL. Search engines see it as such and it is clear to users. You only have to look at the Stack Exchange network. (This is not the same as a dash.)
Use the hyphen: