After looking around it appears there is no easy answer. I also wont be taking any responses as "legal advice".
I will break it down to a simple example.
Lets say A friend wants to pay me $500 for some bitcoin because they dont want to go through hassle of setting up an account on a exchange. Is that legal?
Please post links to sources because I dont think strictly opinion is helpful.
Don't think it's illegal. There are even ATMs where one can do that.