With society becoming increasingly dependent on computers there is relentless growth and impact of malware or malicious software. Continuous Malware evolution and numbers have become a challenging and persistent problem, to begin with. An attacker or the cybercriminal uses malware as a tool to carry out intentional malicious cyberattacks on the computer systems, where consequences can be devastating if adequate measures are not taken to counter malwares. Machine learning seems to be the best and the most popular area for researchers for classifying malwares. This review paper contains a detailed study of different malware detection technologies and also covers challenges faced during malware classification and analysis, extraction of features, model development, and assessment will be presented which will provide an insight into the different methodologies and their performance for the data scientists and cybersecurity experts.