<p>Let's assume that some developer in my team shelved his changes that he did in branch A. And I am working on branch B. Can I unshelve his changes into branch B? (By GUI or command prompt) </p>

The shelf information includes the specific path it goes to.  Unfortunately I don't know of any automatic way to unshelve to any location other than the one it was shelved to.  The times I've wanted to do this I had to check out the equivalent files in the new branch, unshelve from the old branch, then manually copy the files over.
EDIT:  Well, I guess I was doing it the hard way.  I'll have to try out Curt's solution. :)