Generative Adversarial Networks (GANs) have emerged as powerful frameworks for generating realistic and diverse data samples in various domains including computer vision, natural language processing and audio synthesis. In this study, a comprehensive overview of GANs, their key components, the training process, and the evolution of the field are presented. Different variations in GAN architectures and their applications across domains are discussed. Furthermore, the challenges and open research directions in GANs, their stability, mode collapse, evaluation metrics, and ethical considerations are analysed. The aim of this review is to provide a comprehensive understanding of GANs and their strengths, limitations, and potential future developments.