If you have Qlik Sense Enterprise I have found that it is best to develop apps using that instead of the Desktop. But there may be times when you are not connected or want to build something just for yourself where the Desktop makes sense.
Moving apps and managing them is more difficult if they are being done with the Desktop.
As you mentioned there are some differences between the versions.
The Desktop is a free version I believe intended mostly to introduce people to Qlik. It is not a method for creating, sharing, and managing apps across a business.
Both desktop and server are full versions of the Sense tool.
I'd use desktop to prototype your App you can install extensions and try things without the worry of breaking something on production.
At some point you are going to want to share your app with others for feedback.
Cloud is an option if your app doesn't use extensions but I'm guessing you are planning on deploying into the server environment.
When you import into the server you can then decide if you want to have a dedicated test stream in between your production environment or just publish into your production stream for review with the app designated as test.
Hope this helps
Thank you all! What's the best practice to move apps developed with Desktop to server environment? Manually move .qvf to server through windows explorer?
For the use cases of Desktop, as Andy said, one could be building prototype; the other I think of is to building apps offline while commuting on the train. I am looking for a robust/correct way to exchange files between laptop and server environment.