You need to load both a font and an encoding that supports Greek. In LuaLaTeX, that’s Unicode, and you can automatically switch to your Greek language and font whenever you start typing in Greek.
\documentclass{article}
\tracinglostchars=2
\usepackage[english]{babel}
\usepackage{unicode-math}
\babelprovide[import=el, onchar=ids fonts]{greek}
\babelfont{rm}[ Language=Default]{NewComputerModernBook}
\babelfont{sf}[ Language=Default]{NewComputerModernSansBook}
\babelfont{tt}[Language=Default]{NewComputerModernMonoBook}
\setmathfont{NewCMMath-Book}
\pagestyle{empty} % Suppress page numbering
\begin{document}
This is λ lambda.
And (λ) in math mode.
\end{document}

You can define different fonts for \babelfont[greek]{rm}, and Babel will switch to them when you start typing in Greek in text mode. It will use the symbols from your Unicode math font in math mode. You can instead load Polyglossia if you prefer it to Babel.
My advice is to use LuaLaTeX and unicode-math when you can, and legacy 8-bit fonts when you have to. Tn PDFTeX, the 8-bit font encoding you want is called LGR, and you also want alphabeta to enable Greek letters in both text and math mode.
\documentclass{article}
\tracinglostchars=2
\usepackage[LGR,T1]{fontenc}
\usepackage[greek, english]{babel}
\usepackage{alphabeta}
\pagestyle{empty} % Suppress page numbering
\begin{document}
This is λ lambda.
And (λ) in math mode.
\end{document}

If your main font does not come in LGR, you can declare a font substitution with substitutefont.
You were getting the error you did because PDFTeX only understands Unicode characters that you’ve set up, and the LaTeX kernel only sets up characters that are in one of the font encodings you’ve loaded.
If you check your .log file from your original LuaLaTeX MWE, you’ll see a warning message buried in the middle of it, saying that there was no λ glyph in the current font. Other than that, TeX silently ignores the error. This is terrible design, but apparently we’re stuck with it for the sake of backward compatibility. The command \tracinglostchars=2 will at least display the warning on the console.
λin text mode or in math mode? – Mico Dec 01 '20 at 20:13fontspecand/orunicode-mathpackages? Which text and math fonts do employ? – Mico Dec 01 '20 at 20:18\tracinglostchars=2so that the warning (it will say something like:Missing character: There is no λ (U+03BB) in font [lmroman10-regular]:+tlig;!) shows up in the terminal and not just in the log file. Unfortunately, this is not the default (though IMO it should be). – ShreevatsaR Dec 01 '20 at 22:25