When to help and when not to? How does one know when to help and when not to help others? 

It seems without awareness of the results - bad, good, neutral for the one being helped and one who is helping, it is difficult to make choices.

For example, you may help someone in distress however you may also become the recipient of that distress.
I guess the most Buddhist answer is going to be, to the extent you are blinded by "kleshas" (mental/emotional hangups) you can't clearly see what is good for others -- nor even what is good for yourself. The fewer hangups you have, the better you can estimate the outcomes - all the way until Buddha's omniscience, which involves 0% obscurations and therefore 100% clarity. So working on your own mental and emotional hangups is the best way to ensure your actions will do more help than harm.

As was said in Sedaka Sutta:


  And how does one help others by helping oneself?
  -- By practicing Dharma, by developing it, by pursuing it.


Meanwhile, is there a rule of thumb we can apply to decide when to help and when not to help? Here is what I follow:


the kind of help that inspires other person to let go of obsessions, negativity, confusion, attachments, fixed ideas, overgeneralizations, preconceptions, one-sided views etc. - is useful even if it involves lots of effort and pain on my side;
but the kind of help that supports person's samsaric lifestyle - and helps them run on like a squirrel in the wheel - this kind of help has very little long-term effect IMHO, outside of reducing their immediate suffering. I still do it sometimes, out of compassion -- and in the hope that perhaps it will inspire recipient's faith in basic goodness -- but I don't allow it to use all of my energy / tip me out of balance - otherwise that would be what Chogyam Trungpa called "idiot compassion".