Theme Base Guide
A theme gives you the ability to extend/change the visual appearance of the Storefront via styling the SCSS/CSS and adjusting twig templates. You can also provide JavaScript with your theme to change how the Storefront behaves in the browser. For example, JavaScript is used in Shopware to open the offcanvas shopping-cart. Now, as you might know, Shopware comes with a default theme, to make things a bit easier. The default theme in Shopware is built on top of Bootstrap 5, style-wise. So everything you can do with Bootstrap, you can do with the Shopware Storefront as well.
Another handy capability is the theme configuration: As a theme developer you can define variables which can be configured by the shop owner in the Administration. Those variables are accessible in your theme and let you implement powerful features.
Basically a theme can be an app/plugin that aims at changing the visual appearance of the Storefront. To be better understand the difference among Plugins and Apps vs Themes, refer to the corresponding article.
Next steps
Now that you know what you can do with themes, the next steps would be to create themes.