Give users a stripped down version of add node page and then require admin approval
You can assign permissions to fields, the content permissions module should give you what you want. Look in the permissions pages and you can see what rolls have access to which fields. 

A simple way to set up the workflow you suggested is to set the default node status to unpublished (look under workflow settings on the edit content type page). Then make sure only your admin role has the administer nodes permission.