KOMA-Script supports several ways to set the font size. First of all, if you want fontsize=<value> it tries to load a font size definition file \@fontsizefilebase<value>.clo. If this is not found, it tries \@fontsizefilebase<value>pt.clo. If this is not found, it tries size<adapted value>.clo. <adapted value> is the font size in pt but with stripped pt, it results, e.g., in 10 for 10pt, 11 for 11pt, and 14 for 14pt. Last but not least KOMA-Script provides a fallback calculation for font sizes without font size definition files.
The default for \@fontsizefilebase is scrsize, but you can change it before \documentclass.
So with fontsize=14pt, scrartcl searches for scrsize14pt.clo and size14.clo. If you have installed package extsizes, it will find size14.clo. There you can find:
\renewcommand\normalsize{%
\@setfontsize\normalsize\@xivpt{17}%
and in the LaTeX kernel:
\def\@xivpt{14.4}
This is the reason for getting 14.4pt instead of 14pt.
If you really want 14pt, you need to make your own font size definition file. You can use scrsize10pt.clo, rename it and change the values. Or you can use:
\documentclass{scrartcl}
\usepackage{scrfontsizes}
\generatefontfile{afsize}{14pt}
\begin{document}
Test
\end{document}
to generate afsize14pt.clo. After generating the font definition file:
\makeatletter
\newcommand*{\@fontsizefilebase}{afsize}
\makeatother
\documentclass[fontsize=14pt]{scrartcl}
\usepackage[letterpaper]{geometry}
\usepackage{fontspec}
\makeatletter
\def\showfontsize{\f@size{} point}
\makeatother
\begin{document}
\showfontsize
\end{document}
Will result in:

Last but not least
\documentclass[letterpaper,fontsize=14pt]{scrartcl}
\KOMAoptions{fontsize=14pt}
\makeatletter
\def\showfontsize{\f@size{} point}
\makeatother
\begin{document}
\showfontsize
\end{document}
Would also result in using 14pt, because \KOMAoptions{fontsize=14pt} uses the fall back calculation. This is the same font size calculation, that is used by \generatefontsizes. Nevertheless, in this example initialisation of some load time lengths of scrartcl could be done with, e.g., the font size of size14.clo. So combining both methods would be a save solution, if your document needs at least two LaTeX runs:
\makeatletter
\newcommand*{\@fontsizefilebase}{afsize}% setup prefix of font declaration files
\makeatother
\documentclass[letterpaper,fontsize=14pt]{scrartcl}
% Generate and use the font size declaration file, if is does not exist
\IfFileExists{\csname @fontsizefilebase\endcsname 14pt.clo}{}{%
\usepackage{scrfontsizes}
\generatefontfile{afsize}{14pt}
\KOMAoptions{fontsize=14pt}
}
\begin{document}
\csname f@size\endcsname\ point
\end{document}
13.999ptproduces a14.4ptfont... – Werner Apr 28 '16 at 03:24extsizes,size14.clowill be loaded.size14.clouses 14.4pt for 14pt. You can make your own font size using packagescrfontsizesor by renaming and editing an existing file likescrsize10pt.clo. – Schweinebacke Apr 28 '16 at 07:20