This course offers a comprehensive introduction to Deep Learning (DL) and Generative Artificial Intelligence (GenAI), focusing on both foundational principles and advanced techniques. Recent breakthroughs in AI, particularly the development of transformers, have drastically enhanced the performance of large language models (LLMs) and vision models. The curriculum combines mathematical theory with practical examples to deepen understanding of DL and GenAI. Key topics include Neural Networks, Convolutional Neural Networks (CNNs), Recurrent Neural Networks (RNNs), Variational Autoencoders (VAEs), Diffusion Models, and Generative Adversarial Networks (GANs). The course will also cover essential methods for training, testing, regularization, and evaluation, as well as advanced subjects like contrastive learning, transfer learning, transformers, and foundation models. Through hands-on projects, students will apply DL and GenAI techniques to real-world problems. Python and PyTorch will be used throughout the course.