Akurat przykład, który podałeś document.createElement jest użyteczny i to bardzo. Dzięki temu możemy tworzyć elementy za pomocą JS-a, które później możemy wstawić na nasza stronę.
Pewnie, że sama metoda .createElement nie robi nic "wizualnego", ale za to tworzy element i przechowuje (zmienna do, której przypisaliśmy metodę) go. Dzięki temu, że nie wrzuca go do DOM-u, mamy możliwość stworzenia elementu i wyświetlenia go kiedy chcemy. Czemu to jest tak ważne i fajne, zrozumiesz na późniejszym etapie nauki. :)
Czy wszystkie element (obiekty) są ważne? TAK.
To, że ty nie korzystasz, na przykład, z ciasteczek na twojej stronie, nie oznacza, że nie są one potrzebne. Jeżeli obsługa ich została dodana do JS-a, to najprawdopodobniej ktoś z nich korzysta.
W każdym języku tak jest [Nawet polskim :)]. Istnieją pewne rozwiązania, które są wykorzystywane w każdym projekcie (np. dodawanie, odejmowanie, tworzenie zmiennych itp.) i istnieją takie, które wykorzystujesz tylko w sytuacji gdy ich potrzebujesz (np. nie zawsze używasz klas, JSON.parse, obiektu Math itp. No i w tym jest twoje element.createElement/removeChild)