Friction is caused by the roughness of the materials rubbing against each other, deformations in the materials, and a molecular attraction between molecules of two surfaces.
1. Surfaces not completely smooth:
Most friction results because the surfaces of materials being rubbed together are not completely smooth. If you looked at what seems to be a smooth surface under a microscope, you would see bumps, hills and valleys that would interfere with sliding motion. Of course, the rougher the surface, the more is the friction.
If both surfaces become ultra-smooth and flat, the friction from surface roughness becomes negligible, but then friction from molecular attraction comes into play, often becoming greater than the normal friction.
2. Deformations:
Soft materials will deform when under pressure. This also increased the resistance to motion. For example, when you stand on a rug, you sink in slightly, which causes resistance when you try to drag your feet along the rug's surface. Another example is how rubber tires flatten out at the area on contact with the road.
When materials deform, you must "plow" through to move, thus creating a resistive force.
3. Molecular attraction:
There is another factor in friction, and that is stickiness caused by molecular attraction. This was mentioned above where surfaces are so smooth that the materials stick together due to molecular forces.
Soft rubber is an example of a material that can have this type of friction. This factor is usually seen in rolling friction. The stickiness will create a resistance to any motion. Although this force is the smallest, it still can be a factor when the other causes of friction are low.