Newer API's like D3D11 force use of vertex buffers.
You can use static (contents don't change) or dynamic vertex buffers (contents can be updated and changed by CPU).
My question is, how many vertex buffers is too many? How do you know you are approaching the limit? Should every model have its own vertex buffer? Should you only have something like, say 8, vertex buffers and share them between all models, updating as necessary?