Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources that can be rapidly provisioned and released with minimal management effort or service provider interaction. Key characteristics of cloud computing include broad network access, resource pooling, rapid elasticity, and measured service. Cloud computing provides many advantages such as lower costs, improved performance and collaboration, universal access, and unlimited storage. However, it also has disadvantages like reliance on a stable internet connection, potential security and reliability issues, and limited features compared to desktop software.