Moddeling a submachine gun...

What kind of techniques should I use to model this?, curves, or something else?

It would probably just be best to do box modeling for the gun instead of using subsurfaces. Subsurf really only needs to be used on organic things.

Thank you.

Actually you would box model the gun to get the over all
shape correct then use a SubSurf modifier to get the
nice rounded edges.