I'm still runnng on a PII and with ~600 to ~700 wpoly you can get great r_speeds. (Even in software mind you... if there's no combat)
If there is combat - keep the r_speeds down to about 400 to 500 wpoly
All it takes is some clever entity work to "turn off" func_walls and other brush entities when they are clearly out of view, learn and use hint brushes - and remember the subdivisions: 240 units
If you make a wall with a 256x256 texture on a 240 face, you will get 2 wpoly, if you apply a 16x16 texture to the same wall, you'll notice your r_speeds jumping.
keep in mind though that 256x256 textures eat up your texture memory (a max of 4 MB)
ps: If you get a low to mid range 3d card that has OpenGL and about 64 MB - you can run hl with 1024x768 resolution, with HD models, and 700 wpoly with combat with great r_speeds