I recommend An Introduction to Parallel Programming by Pacheco. It’s clearly written, and a good intro to parallel programming.
If you don’t care about something being tied to a language, then Java Concurrency in Practice is a great resource.
Oracle’s online tutorial is free, but probably a bit more succinct than what you’re looking for.
That being said, the best teacher for concurrency is probably experience. I’d try to get some practice, myself. Start out by making a simulation of the Dining Philosophers problem. It’s a classic.