Obstacle, obstruction, impediment, bar, snag denote something which seriously hampers action or progress.
Obstacle, which is used of both material and immaterial things, applies to an object, condition, or situation which stands in one's way and must be removed or surmounted if one is to progress or attain one's ends.
Obstruction may be used of immaterial things, but such use is often obviously figurative, for the word suggests a blocking of a way or passage.
Impediment is applied to something material or immaterial which serves to hinder or delay action or progress until one is freed from it.
Bar applies to something interposed, whether by nature or by man, which serves to prevent admission or escape as effectually as the bars of a cage or prison.
Sometimes the word carries a strong suggestion of prohibition, especially when it applies to a law or condition that restrains.
Snag, from its application to a stump of a tree with jagged points which lies hidden under water and proves a hazard to boats, is extended to an obstacle or impediment which is hidden from view and which one encounters suddenly and unexpectedly.
Sometimes snag suggests a mere temporary impediment.