I know a lot of developers that struggle to fluently write multi threaded code. They have to spend a lot of time just thinking about the parallelism and what not. It really racks their brains. And even then they don't usually choose the correct lock for the given situation. I.e. a simple Monitor instead of a Reader-Writer...
Is it just a question of time or is it that not everyone will just "get it"?
Is it a matter of getting it to "click" and then you're fine?