Being a newbie to Clojure I was having a hard time understanding the use case of apply; until tonight. I was simply missing the fact that you use apply when the argument list is unknown to a particular function that takes something like [& xs]. Once that big detail was in my head apply made complete sense.
Below is some examples I put together to try and get a handle on apply and cement it in my brain. Its really quite simple now that I did this. I felt like a complete idiot when the lightbulb went off; but isn't that with most things. Clojure is really taking my mind for a loop compared to the OOP languages I have used in the last 13 years.