Beset is more personal, beseiged is more communal. 'Beset by doubts' is the only idiomatic phrase for me, though 'beseiged' would not be wrong, just unusual. We talk of towns being beseiged, rather than an individual.
to beset = to surround with violent intent; to be plagued with; to be extremely troubled by; -> this does not have the meaning of preventing the movement of someone or something.
To besiege = to surround so as to isolate (often by keeping captive.)
I am beset by/with evil thoughts - wherever I go, the thoughts are always there and they are troubling me.
I am besieged by evil thoughts - I can do nothing because of these evil thoughts.
Compare: beset - I will set my dog onto you besiege - I will lay siege to your castle.