In the top right of the content editor interface you will find a number of different content types that can be selected:
Content Type dropdown
The different content types do not change how the content performs, but instead they are used as an organizational tool to inform the user what to expect during each content. The content type is displayed to the user in the course's catalog page.
Activities are designed to guide the user through learning a new subject area by giving them opportunities to apply the skills in a real-world scenario. Activities are typically focused on the application of concepts learned in lessons, but in shorter courses, they may also teach new material as the user progresses.
Challenges typically include only a problem statement for the user to solve and some starter code and/or environment. This allows the user to focus on solving the problem they've been tasked with on their own.
Lessons are used to introduce new subject matter to the user alongside an environment where they can test out new skills, but guided hands-on application is typically reserved for activities.
Projects are open-ended opportunities for the user to apply what they have learned so far. At most, they may contain a short suggestion for what the user could build and some starting code to work with, but beyond that, the user is on their own to build something new!
Quizzes give the user an opportunity to see if they understand the material taught by answering multiple choice questions. It is standard practice to disable the sandbox environment when creating a quiz, as it provides no value in this context.
A reading is used to share static markdown with the user. Like a quiz, it can be helpful to disable the sandbox environment when creating a reading to save on costs.