In general, 안 + Verb is a general "do not + Verb", whereas 못 + Verb means "can not + Verb"; however, 못하다 is much broader in meaning than the English "cannot", so that it is used instead of 안 in many cases where we will still use "do not" in "English.
Some examples of how 못하다 is used more broadly in Korean:
- When you haven't done (haven't been able to do) something yet:
동료들은 아직 못 만났어요.
(In this case, you'll often see the word 아직 and a past tense)
- Where there is some insufficiency; especially, something wasn't good:
그 영화를 즐기지 못했다 (I didn't/couldn't enjoy the movie)
- When there's an insufficiency of knowledge of some sort:
그것은 예상하지 못했어요 (I didn't/couldn't expect that)
As you can see, in examples 2 and 3, "didn't" would be more natural for the English translation, yet Korean would often use "못하다". In general, there won't be a rule of when to use 못하다, but by hearing it used in various situations, you'll get a feel for when 못하다 is more appropriate than 안하다.
I think it can be safer to use 못하다 in certain cases though, to emphasize that something was involuntary and that you want to do it; 동료들은 못만났다 makes it seem like you want to / intend to meet them; if your boss asks about a project that you haven't finished, using 못했습니다 makes it seem more like you were trying, compared to 안했습니다.