Dein Beispiel ist leider nicht lauffähig, weil die Tabellenzeile mit `\ ` statt `\\` oder `\tabularnewline` beendet ist.
Dass die Tabelle nicht linksbündig mit dem Papier ist, ist eigentlich logisch. LaTeX hat keinen Grund, die Tabelle weiter links zu beginnen, nur weil sie breiter als die Textbreite ist. Dazu muss man die Tabelle schon explizit nach links schieben. Dafür kennt LaTeX die Anweisung `\hspace*`. Der linke Rand ist bei LaTeX `\oddsidemargin` und beginnt aus unerfindlichen Gründen 1in rechts vom tatsächlichen linken Rand. Außerdem muss man bei scrreprt ohne Option `parskip` noch 1em zusätzlich nach links, wegen dem Absatzeinzug. Also wäre die Lösung:
\documentclass[12pt]{scrreprt} \usepackage[ngerman, english]{babel}
\begin{document}
\hspace*{-\oddsidemargin}\hspace{-1in}\hspace{-1em}%
\begin{tabular}{|p{0.4\paperwidth}|p{0.5\paperwidth}|}\hline
Spalte 1 & Spalte 2 \\ \hline \end{tabular} \end{document}
Das `%` in der `\hspace`-Zeile braucht man, weil sonst ein Leerzeichen vor der Tabelle eingefügt wird.
Hier zum Vergleich jeweils eine Seite mit dem ursprünglichen Ergebnis (links bzw. oben) und dem Ergebnis mit den `\hspace` (rechts bzw. unten):
[![OriginalErgebnis][1]][2][![Ergebnis mit \hspace][3]][4]
Natürlich musst du jetzt noch die Breite der Tabelle anpassen, wenn sie bis zum rechten Rand gehen soll. Das geht wahlweise mit [`tabularx`](https://ctan.org/pkg/tabularx) oder mit etwas Berechnung:
\documentclass[12pt]{scrreprt}
\usepackage[ngerman]{babel}
\begin{document}
\hspace*{-\oddsidemargin}\hspace{-1in}\hspace{-\parindent}%
\begin{tabular}{|*2{p{\dimexpr .5\paperwidth-2\tabcolsep\relax}|}}
\hline
Spalte 1 & Spalte 2 \\
\hline
\end{tabular}
\end{document}
[![Tabelle in Papierbreite][5]][5]
Und dann gibt es sicher ein Problem mit einer Overfull \\hbox. Wenn dich das stört, kann man da vetwas mit der `addmargin`-Umgebung machen:
\documentclass[12pt]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage{tabularx}
\begin{document}
\begin{addmargin}{-\dimexpr \oddsidemargin+1in\relax}
\begin{tabularx}{\paperwidth}{|X|X|}
\hline
Spalte 1 & Spalte 2 \\
\hline
\end{tabularx}
\end{addmargin}
\end{document}
oder ein weiteres `\hspace` nach `\end{tabular}` schreiben. Aber das Ergebnis funktioniert auch ohne das.
[1]: https://i.ibb.co/304SkfG/Original-Ergebnis.png
[2]: https://i.ibb.co/304SkfG/Original-Ergebnis.png
[3]: https://i.ibb.co/sbKQJWL/hspace-Ergebnis.png
[4]: https://i.ibb.co/sbKQJWL/hspace-Ergebnis.png
[5]: https://i.ibb.co/qjckFxD/Papierbreiten-Ergebnis.png