I am not able to replicate the problem, at least in Mathematica 10.0.2.
exp1 =
ComplexExpand[
Im[(1 + I)/(2 + 3 I - bb) + (1 + I)/(2 + 3 I - cc)] +
Im[(1 + I)/(2 + 3 I - dd)]] - 3.5;
exp2 = ComplexExpand[
Im[(2 + 2 I)/(3 + 4 I - bb) + (2 + 2 I)/(3 + 4 I - cc)] +
Im[(2 + 2 I)/(3 + 4 I - dd)]] - 0.75;
exp3 = ComplexExpand[
Im[(3 + 3 I)/(5 + 7 I - bb) + (3 + 3 I)/(5 + 7 I - cc)] +
Im[(3 + 3 I)/(5 + 7 I - dd)]] - 0.75;
eq5s = {exp1, exp2, exp3};
varr2 = {bb, cc, dd};
Timing[solns = NSolve[eq5s, varr2];]
(* Out[20]= {2.727674, Null} *)
In[21]:= Length[solns]
(* Out[21]= 48 *)
Earlier versions used a different mathod and may be slower. One thing that works in version 9 is to clear denominators.
polys = Numerator[Together[eq5s]]
Now NSolve[polys, varr2]
will be quite fast.