I liked the talk the Antichamber dev gave at one of the GDCs. He prototyped the game and then sent it to different conventions for playtesting. Basically, a large portion of the testers failed at the game for reasons completely unforeseen, although perfectly logical. The different puzzles were obviously designed to introduce the mechanics gradually, but the players couldn't learn them at the same pace. When faced with a difficult puzzle, hardcore players would just plow through, but the casuals got stuck and with the accumulated frustration they eventually quit the game. To solve this, he introduced nonlinearity, where at different puzzle gates he added side branches for casuals. That way, when casuals got stuck, they could enter the side branch that would further teach them the puzzle mechanic or maybe even simplify the original puzzle.
There's more there, he talks a lot about foreshadowing, creating memorable sections, removing necessity for a player to be psychic when solving puzzles etc.. Here's the link
https://www.youtube.com/watch?v=d_0Tawc_1A4
I'm not sure, how much of it can be applied to classical pnc adventure games, but I found it interesting.
Another pet peeve of mine is, that a lot of the classical adventure games fail at the execution part of a solution to puzzle. A lot of times you figure out what you have to do, but actually fail to do it because of unintuitive interface/controls or just plain unintuitive design. In one of the Wadjet Eye Games, (Technobabylon I think), you have to solve a relatively simple inventory puzzle. I can't remember the specifics, but what I remember is, that you have to interact with the item in a special screen, not just regular inventory screen - there the game gives no response. Another example of this is dialog in QFG4, where you've got 2 dialog windows. One, where you click on an NPC, and the other, where you click on yourself.