When you "lay" an object, it means that you are placing it gently (like the guy above me has said!), whereas the word "put" doesn't carry connotations of completing the action carefully or softly.
The word "lay" also implies that you are placing an object on top of something else. When you "put" an object somewhere, you aren't necessarily placing it on top of something else - it can be placed in any direction or fashion.
The word "put" can also be used when describing abstract information, whereas the word "lay" is almost always used to describe a physical action. For example, the word "put" is often used in idioms such as "put to rest" or "to put someone in their place". These expressions are describing an abstract or theoretical action, rather than a concrete or physical one.
Sorry if this is hard to understand!