You can pump 3k$ in hardware and connection and still be a laggy bastard if you stay with game defaults just for the sake of it ...
For some odd reason the game uses cl_maxpackets 30 by default, reckon the devs threw in a 1337 quake3 setup from 1998 :S
The only pro of 30 might be it makes your ping "look" better - rumors, waste of time to reseach really
As you can find, 30 is a proper setting for a really fast internet ... at the standards from 1998 >click + scroll to bottom
Recommended for y2k connections (DSL/cable) is 60-100, to find a decent value for your environment enable the Lagometer (random link), rule of thumb: green+blue is good, yellow+red is crap (either bad connection to server or your network cvars need adjustment!)
/cg_drawLagometer 1 resp. seta cg_drawLagometer "1" ... remark: most other games use cg_lagometer
seta cl_maxpackets "100" // 60-100
seta cl_packetdup "0" // sending 'packets' twice is a relic
seta snaps "20" // 20 OR 40
seta rate "25000" // 10000-25000
in case you get yellow in lagometer (likely) try to lower cl_maxpackets to e.g. 75-85 then rate e.g. to 20000
re snaps: the only settings that make sense are 20 and 40 (40 is controversal, i.e. questionabe it is really better, from my experience 20 is smoother on crowded servers with temp lag)
Personally i always would try to turn so called "antilag" and "prediction" off, (g_antilag 0 and cg_predictItems 0) imo this is always just a well meant attempt to "heal" a amendable setup (see above, "30" xD ) and rather screws up gameplay.
com_maxfps "value" ... depends on hardware. A "value" only makes sense if you can get (cg_drawFPS) more or less constant "value" FPS