The first page of `scrlttr2` resp. `scrletter` is somehow special. For example the position of the footer does not only depend on the layout either set using `typearea` or `geometry`, but also on the *pseudo length* `firstfootvpos`. You can visualize that position using
```latex
\LoadLetterOption{visualize}
\showfields{foot}
```

As already explained in [Schweinebacke's answer](https://tex.stackexchange.com/a/33646/277964) to: [How to avoid empty space at the end of a page when using scrlttr2?](https://tex.stackexchange.com/q/17596/277964) the larges text area on the first page can be achieved using option `firstfoot=false,enlargefirstpage`.

Another problem with your code is, that loading `geometry` changes the layout parameters but does not automatically adjust the depending *pseudo lengths*. These are already setup by loading the default `DIN.lco`, where you can find:
```latex
    \setplength{firstfootvpos}{1in}%
    \addtoplength{firstfootvpos}{\topmargin}%
    \addtoplength{firstfootvpos}{\headheight}%
    \addtoplength{firstfootvpos}{\headsep}%
    \addtoplength{firstfootvpos}{\textheight}%
    \addtoplength{firstfootvpos}{\footskip}%
```
So `firstfootvpos` depends on not only one but several layout lengths, which `geometry` sets depending on the font size. So it is not unexpected, that changing the font size and loading `geometry` without re-loading the letter option `DIN.lco` results in somehow strange settings.

So the first step to get valid result, would be to add
```latex
\LoadLetterOption{DIN}% or whatever letter option you are using
```
after loading `geometry`:
```latex
\documentclass[a4paper,10pt,version=last]{scrlttr2}%,fontsize=10pt

\usepackage{fontspec}% for lualatex 
\usepackage{geometry}
\usepackage[latin]{babel} % for lipsum
\usepackage{lipsum}
\usepackage{showframe}

\setkomavar{subject}[]{\the\dimexpr\useplength{firstfootvpos}\relax}
\LoadLetterOption{DIN}% Load it again after changing the layout by loading geometry
\LoadLetterOption{visualize}
\showfields{foot}

%\KOMAoptions{enlargefirstpage}
%\KOMAoptions{firstfoot=false}

\begin{document}

\begin{letter}{%
  CapMini GmbH \\
  Egon Walther\\
  Walthershofener Straße 20\\
  88444 Walthershofen\\
} 
  \opening{Salve Egon,}
  \lipsum{1}
  
  \closing{Regards}% IMHO \\[2\baselineskip] is nonsense here, so I've removed it

\end{letter}
\end{document}
```
[![using 10pt or fontsize=10pt][1]][1]

And now, the result without option `10pt` or `fontsize=10pt` and therefore the default `12pt`, is very similar:

[![not using 10pt but the default 12pt][2]][2]


  [1]: https://i.sstatic.net/0kwMadQC.png
  [2]: https://i.sstatic.net/42btY1Lj.png