The Toronto FC striker was expecting to be called up by manager Roy Hodgson for the tournament in Brazil, but Wayne Rooney, Daniel Sturridge, Danny Welbeck and Rickie Lambert were eventually selected up front for the Three Lions.
"In my heart I really thought I was going. I thought the manager should know what I'd bring in terms of goals. Even as a sub I'd expect to get goals and that's important in tournaments," Defoe told The Guardian.
"I'd been involved in every squad leading to the World Cup and all of a sudden I'm not needed? It was hard to take. All he said was that he wants to go with young players. But I thought my experience, and playing in two big tournaments, and scoring at a World Cup before, would help."
When asked if Hodgson had told him that moving to the MLS would affect his chances at international level, Defoe added: "No, but maybe he should have. I think that might have been the reason but he didn't say it."
Defoe has scored 19 goals in 55 appearances for England.