Display lists are not incompatible with vertex arrays, you can use both, if you want. While there?¢_Ts a possibility for drivers to optimize function calls inside a display list, you shouldn?¢_Tt be making those calls in the first place. Display lists were a useful feature in the original OpenGL when there were no VBOs, then it was the only way to possibly keep data server side. Now, as I see it, just like immediate mode, they are useless. They are not present in other graphics APIs and there?¢_Ts no actual guarantee that data won?¢_Tt be kept in system memory. Use VBOs whenever you can and because VBOs are analogous to vertex arrays, it?¢_Ts easy to fall back to them, if VBOs are not supported.