This amazingly detailed and well researched post discusses common themes in level design. In particular the authors studied 2D games, but these concepts apply to 3D game as well.
The patterns are: Guidance, Safe Zone, Foreshadowing, Layering, Branching, and Pace Breaking.
Layering is the technique of combining multiple mechanics together to create a new challenge or experience for the player. This could mean both multiples of the same mechanic or mixing mechanics together.
For example in Mario, a layering example might be coming across 3 goombas, a hammer bro and bullet bill all at the same time. The player has seen each of these enemies before, but not handled them in this specific configuration. This type of layering is how designers can use a few elements to create a wide variety of gameplay.
Branching gives the player a sense of choice and a feeling of empowerment as they dictate where to go next. Sometimes the branching doesn't make a difference while other times it might lead to a short cut or treasure room. In games like The Legend of Zelda, the levels can be played in any order.