You can create a landscape with the landscape tool, with a heightmap that you have generated in a 3d program or world machine/terresculptor. For a level use static meshes instead of brushes -> better performance
I just want to add to this that static meshes are certainly more performant than anything else. The reason is that static meshes can be culled, have setup LODs, unique UVs for texturing, and plenty of other things.
BSP/Geometry brushes are simply meant for prototyping and rapid iteration. Using them for that allows you test gameplay much more quickly than waiting for meshes to be completed. If you decide to use BSP it is recommended that they be converted to Static Meshes via the details panel. You will need to create a lightmap for them along with collision though.