Target:
The model should have as few polygons as possible and still look sufficiently appealing. In the most cases the element in game will occupy a fraction of the screen only.
I switched early to Blender 2.80 (now 2.81), mainly because of the better handling and the Dyntopo function.
The following description is not a guide for an ideal process; it is simply the process I use. Every single step contains a number of details, which I will not describe here. The process cannot be completed in a few minutes either. I estimate about 4-8 hours working time for a model of the quality shown. Most time consuming is a decent Low Poly Model (step 1) followed by texture paint (step 7).
Step 1: Low Poly Model
The model should have all the features of the item. Clear protrusions and edges should at least be indicated. It should be taken into consideration that the effect of the normal texture becomes invisible once the object is in low light.
For example: Cuffs of boots are visible, seams and buckles are ignored.

Step 2: UV map for Low Poly Model
The UV map is finally created. Seams are clean and straight.
As a result, the UV map nust not be changed, even if the Low Poly Model is adjusted! All textures based on the UV settings.

Step 3: Export the Low Poly Model
Depending on the later import in the target system, the mesh is exported with UV mapping. For Unity I am using FBX.
Step 4: Create High Poly Model
The Low Poly Model is duplicated and deactivated. The new model is the High Poly Model.
A popular mistake is that the Low Poly Model remains selected even if not visible and is changed and destroyed by all subsequent steps.
The basic mesh is detailed by edge subdivides. I usually use 6-fold subdivides without smooth (smoothness = 0).
Step 5: Basic sculpting of the High Poly Model
The High Poly Model is smoothed. The drapery is incorporated.
Step 6: Fine sculpting the High Poly Model
I am switching to Dyntopo in sculpting. I have the best experience with detailing: Brush details with 25%.
Details such as seams, laces, buttons, borders and scratches are now incorporated.
Attention: There must be no vertical surfaces to the surface. These would not be visible later in the normal texture and thus in the final model!
The final model must be UV-wrapped. The wrapping can be done in any way and don’t need to meet the Low Poly Model. I don’t use the Smart UV Project but draw seams by myself.

Step 7: Texture paint of the High Poly Model
A special material for the High Poly Model is created and the model is ‘painted’.
To get fast results I build over time a set of about 300 photos and 50 basic textures to select from.
Special features of the High Poly Model such as folds, seams … should be identified by shading. One should keep in mind that in bad light the peculiarities of the sculpting are not visible. These are shown later in the normal texture, which only works in good light conditions.

Step 8: Baking the textures
The Low Poly Model is activated again and gets a material in which the texture is present but not connected to the material itself.
Select the High Poly Model (source) and the Low Poly Model (target) and create normal as well as the diffuse texture (only color) in the mode ‘Selected to Active’. A reasonable ray distance can be determined by tests.
Sometimes it makes sense to create multiple target textures with different ray distances and overlay the good areas.

Step 9: Metallic (glossy) texture
I could have made real materials in Blender but decides to use the diffuse color only. I draw the texture for the metallic effects using the diffuse texture in Paint.net.
Step 10: Import into Unity
The mesh and the three textures (Diffuse, Normal, Metallic) can now be used in Unity to create a game object with an associated material.
