Pure accident: I ran across this specific work in the references of a near-contemporary HOPE paper and found it interesting not only for its conclusions but also for the insight into their general approach; if you have superseding work to recommend, URLs —or at least cites— would always be welcome!
Besides Jtsummers' great list of citations, I would also suggest [2] as an overview of traditional process algebras and how they formalize and reason about concurrent processes. It focuses a bit more on a specific way of doing these things (namely, by giving processes a structural operational semantics based on labelled transition systems), but other approaches are also introduced and referenced. If you are looking for more thorough, but still undergrad-level treatments, then [1, 3] are safe bets.