Hi Deepak,
Custom Settings :
Custom settings enable you to create custom sets of data, as well as create and associate custom data for an organisation, profile, or specific user. All custom settings data is exposed in the application cache, which enables efficient access without the cost of repeated queries to the database.
Custom Metadata Types :
Custom metadata are like custom setting but records in custom metadata type considered as metadata rather than data. These are typically used to define application configurations that need to be migrated from one environment to another, or packaged and installed.