Joseph has already answered, interpreting the "expandable` in your question as "fully expandable" (or what is perhaps better named as "safe in an expansion only context" see
Advantages and disadvantages of fully expandable macros
However to answer the question as actually asked, note that \numexpr is neither a macro nor expandable.
All macros are by definition expandable, a macro works by expanding to its replacement text. There is no list of these as it is any command defined via \def or its variants \edef, \gdef, \xdef.
The TeXBook lists all the TeX primitivies, these are marked by a * in the index, although you need to check the description of each individually to see if they are expandable.
In classic TeX, the expandable primitives are (I think:-)
\endinput
\expandafter
\csname
\the
\number
\romannumeral
\if
\ifx
\ifcat
\ifcase
\ifnum
\ifodd
\ifdim
\ifeof
\iftrue
\iffalse
\ifhbox
\ifvbox
\ifvoid
\ifinner
\ifvmode
\ifhmode
\ifmmode
\else
\or
\fi
\input % (\@@input in LaTeX)
\jobname
\meaning
\noexpand
\string
\topmark
\firstmark
\botmark
\fontname
in e-TeX the additional expandable primitives are
\topmarks
\firstmarks
\botmarks
\ifdefined
\ifcsname
\iffontchar
\unless
\eTeXrevision
\unexpanded
\detokenize
\scantokens
in addition to all the above pdfTeX adds the following expandable primitives
\pdfescapestring
\pdfescapename
\pdfescapehex
\pdfstrcmp
\pdfmatch
\ifpdfabsnum
\ifpdfabsdim
\pdfuniformdeviate
\pdfnormaldeviate
\pdffilemoddate
\pdffilesize
\pdfmdfivesum
\pdffiledump
\pdfcolorstackinit
\ifincsname
\ifpdfprimitive
\pdfcreationdate
\pdfinsertht
\pdftexbanner
\pdftexrevision
\expanded
XeTeX has the primitives of etex, and adds the following expandable primitives
\ifincsname
\ifprimitive
\normaldeviate
\uniformdeviate
\creationdate
\filedump
\filemoddate
\filesize
\mdfivesum
\expanded
\XeTeXrevision
\Uchar
\Ucharcat
\strcmp
LuaTeX has the expandable primitives of etex plus (at least)
\luatexbanner
\luatexrevision
\formatname
\Uchar
\directlua
\luaescapestring
\scantextokens
\csstring
\expanded
\ifincsname
\pdfvariable
\pdffeedback
pTeX (Japanese TeX engine) adds the following expandable primitives, which are available in ptex, uptex, eptex and euptex:
\euc
\ifdbox
\ifddir
\ifjfont
\ifmbox
\ifmdir
\iftbox
\iftdir
\iftfont
\ifybox
\ifydir
\jis
\kansuji
\kuten
\ptexfontname
\ptexrevision
\sjis
\tojis
\toucs
\ucs
upTeX (Unicode-aware pTeX) adds the following expandable primitives, which are available in uptex and euptex:
\uptexrevision
e-pTeX (pTeX + e-TeX) adds the following expandable primitives, which are available in eptex and euptex:
\expanded
\ifincsname
\ifpdfprimitive
\pdfcreationdate
\pdffiledump
\pdffilemoddate
\pdffilesize
\pdfmdfivesum
\pdfnormaldeviate
\pdfstrcmp
\pdfuniformdeviate
\Uchar
\Ucharcat
If you find missing ones, feel free to edit this answer here....
\numexpris not a macro - it's a primitive from the eTeX-extensions.\numexpr...is not expandable.\the\numexpr.../\number\numexpr...is expandable. ;-) – Ulrich Diez Sep 25 '20 at 21:21