The Three Lions will meet Montenegro on Friday in their latest Euro 2012 qualifier, and coach Fabio Capello confirmed his squad on Sunday night.
Spurs striker Defoe, who has battled his way back into the starting line-up with his club, had expected to be named.
However, Capello opted for Danny Welbeck and Bobby Zamora instead, with Defoe missing out along with former team-mate Peter Crouch.
"I am obviously very disappointed," said Defoe.
"I feel I have not let Mr Capello down when I have played, but I will work hard to get my place back."