A website template is a set of HTML webpages (It have Own JS/CSS/Images) that gives a beautiful look of website. An Website can be more than one template and each template will have different design.
Desktop version: We show full fledge content of website with lot of other options like View Related post, What other are viewing, Big images and Big Font size etc.
Mobile version: We show full fledge content of website with limited option like View Related post, and What other are viewing, show small images and small fount etc
A Theme is a part of Template. One template can have one or more themes. Each theme can have its own JS/CSS/Images. Two different themes of same template will have same design but their color combinations and images may be different.