Digital twin applications use digital artifacts to twin physical systems. The purpose is to continuously mirror the structure and behavior of the physical system, such that stakeholders can analyze the physical system by means of the digital twin for, e.g., decision support, scenario exploration, model-based control, systematic reconfiguration, etc. In this tutorial, we discuss the basic concepts of a digital twin, and how digital twins differ from models and control systems. We show how digital twins can be realized in a framework that integrates models at runtime, semantic technology and simulation models, in order to leverage domain knowledge in model-based analysis driven by live data. We further discuss how a digital twin can systematically evolve over time to mirror a changing physical system. For this purpose, we discuss our work on semantic reflection, which enables a digital twin to query a knowledge graph about itself, and leverage formalized knowledge of the application domain in its (re)configuration strategies. The tutorial will be illustrated by concrete easy-to-understand examples of digital twins, including our on-going work on digital twins for natural systems such as the Oslo fjord.