This book provides a comprehensive exploration of the fundamentals and advanced concepts of cloud computing. It starts with an in-depth introduction covering the definition, evolution, and underlying principles of parallel and distributed computing, as well as cloud characteristics, elasticity, and on-demand provisioning. The book then delves into cloud enabling technologies, discussing Service Oriented Architecture (SOA), REST, web services, the publish-subscribe model, and virtualization, including its types, implementation levels, structures, and support for CPUs, memory, and I/O devices, along with disaster recovery. Finally, this book addresses cloud architecture, services, and storage, detailing layered cloud architecture design, the NIST Cloud Computing Reference Architecture, public, private, and hybrid clouds, and various service models like IaaS, PaaS, and SaaS. It also highlights architectural design challenges and cloud storage, including storage-as-a-service, its advantages. This book is ideal for students, professionals, and anyone interested in a deep understanding of cloud computing, offering both theoretical foundations and practical insights.