Clojure’s core.async library is simply an amazing piece of software to use. It’s also not necessarily the easiest thing to wrap your brain around when you first encounter it. This talk from ClojureConj '13, by Timothy Baldridge, was a very useful treatment of the subject. Timothy is one of the main authors of the core.async library, so he certainly understands the subject well. His file full of examples is also valuable to review, both while watching his talk as well as for future reference.

Update

Eric Normand, who is behind the LispCast video series from PurelyFunctional.tv, has released a series of videos that aim to teach core.async concepts. If you’re interested in understanding the core.async paradigm, and are not very experienced with the library, you would likely find it beneficial to watch.