Networks interact with one another in a variety of ways. Even though increased connectivity between networks would tend to make the system more robust, if dependencies exist between networks, these systems are highly vulnerable to random failure or attack. Damage in one network causes damage in another. This leads to cascading failures which amplify the original damage and can rapidly lead to complete system collapse. Understanding the system characteristics that lead to cascading failures and support their continued propagation is an important step in developing more robust systems and mitigation strategies. Recently, a number of important results have been obtained regarding the robustness of systems composed of random, clustered and spatially embedded networks. Here we review the recent advances on the role that connectivity and dependency links play in the robustness of networks of networks. We further discuss the dynamics of cascading failures on interdependent networks, including cascade lifetime predictions and explanations of the topological properties which drive the cascade.