When a volcano shows signs of unrest scientists are asked to forecast whether an eruption will happen, when it will happen and what kind of eruption it will be. They are also expected to provide information on hazardous volcanic phenomena and their effects, and how long the eruption will last. Eruptions are complex phenomena, however, involving magma ascent to the Earth's surface and interactions with surrounding crust and surface environments during eruption. Magma may change its properties profoundly during ascent and eruption, and many of the governing processes of heat and mass transfer can be highly non-linear. There are both epistemic and aleatory uncertainties involved, which can be large, making precise prediction of a certain event in time and space a formidable or impossible objective; that is, volcanoes can be intrinsically unpredictable. As with other natural phenomena, forecasting is a more achievable goal and needs to be expressed in probabilistic terms that take account of the uncertainties. Ensemble modeling in which uncertainties are sampled with Monte Carlo techniques is likely to become the basis for such forecasting. Despite the limitations, there is significant progress in anticipating volcanic activity and, in favorable circumstances, in making predictions. Data from enhanced monitoring techniques are being combined with advanced numerical models of volcanic flows and their interactions with the environment. Statistical analysis of volcanological data and improvements in methods to treat subjective information are also beginning to provide viable, complementary approaches to basic numerical modeling.