Basically a screenflow is used when you have a user to fill multiple pages,forms or screens. Like filling a credit card application with Personal details as one assignment, Work details as the next assignment etc etc
Rest all situations use the normal process flow when you need routing to different users in one flow, when there are multiple paths, parallel assignments etc
Process flow is the main flow for which you can create a case route to respective operators WL or WB, this can be persisted to DB,anything can be performed here. For ex: use integrator shape to call Websevices, call any smart shapes or what all shapes available can be used in this process flow.
Screen flow can be used by a single operator and completed by single operator here we can use limited shapes no routing of next screen to another operator based on their expertise.
You typically use a screenflow when you have one assignment(ie.e one operator) and it makes sense to split up tha task in multiple screens: For a job application you:
1. Enter your personal information
2. If you have apply for a Java position you should load up some sample code
3. Enter Educations
4. Work History
5. Upload your CV
6 Your skills and so on
It makes sense to have this as 6 different flow actions/sections and it makes sense to be able to go back and forth between the screens and some screens are skipped if they are not relevant. All this is easier if you regard this as ONE assignment and solve it with a screen flow that with 6 different assignments. You will still need to create 6 flow actions and 6 sections but they are tied together in a screenflow instead.