Du hast offenbar nicht beachtet, dass TeX eine Makrosprache ist. Das bedeutet u. a., dass bei Deinem Code rekursiv immer wieder die enumerate-Umgebung begonnen wird, bis die maximale Schachtelungstiefe erreicht ist, was zu einer Fehlermeldung führt.
Am einfachsten kannst Du das Gewünschte mit dem Paket
enumitem erreichen, mit dem Listenumgebungen wie enumerate konfigurierbar werden:
\documentclass [a4paper]{scrartcl}%evtl. mit parskip=full/half siehe KOMA
\usepackage[ngerman]{babel} %neue deutsche Rechtschreibung (Silbentrennung, Verzeichnisse ect.)
\usepackage[T1]{fontenc} %Ausgabecodierung festlegen
\usepackage[utf8]{inputenc} %Latex kann Nicht-ASCII-Zeichen (z.B.€) im Quelltext umwandeln
\usepackage{blindtext}
\usepackage[onehalfspacing]{setspace}
\usepackage{enumitem}
\setlist[enumerate]{before*=\singlespacing}
\begin{document}
\blindtext
\begin{enumerate}
\item \blindtext
\item \blindtext
\end{enumerate}
\end{document}
Allerdings hat in Deiner Liste jedes Element jeweils nur eine Zeile, so dass eigentlich onehalfspacing darauf nicht wirklich eine große Auswirkung hat. Daher könnte es sein, dass Du in Wirklichkeit eine kompakte Liste möchtest:
\documentclass [a4paper]{scrartcl}%evtl. mit parskip=full/half siehe KOMA
\usepackage[ngerman]{babel} %neue deutsche Rechtschreibung (Silbentrennung, Verzeichnisse ect.)
\usepackage[T1]{fontenc} %Ausgabecodierung festlegen
\usepackage[utf8]{inputenc} %Latex kann Nicht-ASCII-Zeichen (z.B.€) im Quelltext umwandeln
\usepackage{blindtext}
\usepackage[onehalfspacing]{setspace}
\usepackage{enumitem}
\begin{document}
\blindtext
\begin{enumerate}[nosep]
\item erstes
\item zweites
\item drittes
\item viertes
\item fünftes
\end{enumerate}
\end{document}
Was sonst noch alles mit dem Paket möglich ist, kannst Du der [d]enumitem[/d]-Anleitung entnehmen.