Rendering static content

I’m sure this has been asked a million times but I can’t find an answer.

If I have some commands to generate a scenery that does not change, is there a way to cache the commands so that I don’t have to rerender everything every frame?

Display-lists (old), VBOs (recommended)