Streams. Given that streams and functional programming appear in a majority of the chapters, you need to be solid with them before moving on to some of the later chapters like threading/IO. I recommend not just reading about streams but writing your own code that uses streams in order to get more practice. The learning curve can be steep but they are a lot of fun once you get used to it.
I agree with Roel that Concurrency can be difficult, but on the plus side the OCP 8 removes almost references to the
Thread class, instead focusing solely on the Concurrency API. I find using Concurrency API to be worlds easier than having to manage threads directly, but there is still a bit of education involved for either.