Lingard, who was a free agent after leaving Manchester United, enjoyed a successful loan stint with the Hammers two seasons ago.
The 29-year-old scored nine goals in 16 matches to help fire West Ham into Europe, and also got back into the England squad.
After another season of bench-warming at United, Lingard was offered the chance to head back to the London Stadium to resurrect his career for a second time.
But instead he turned down European football with West Ham to join promoted Forest on a one-year contract.
“I was surprised, yeah,” said Hammers boss Moyes. “I thought Jesse in the end would come here and I’ve got to say the club made him a really good offer.
“You couldn’t turn around and say David Sullivan and the owners didn’t do everything they could to get him. They certainly did.
“I’ve got to say the club have tried to get lots of players but for different reasons we’ve not been able to get them.”
Moyes has spent almost £100million on Alphonse Areola, Gianluca Scamacca, Nayef Aguerd, Flynn Downes and Maxwel Cornet, but he has still found the transfer market a frustrating place this summer
“If only you knew. It’s been incredible,” he added. “We’ve made bids for numerous, numerous players. Genuine bids and genuine money, and for different reasons we’ve not got them.
“They’ve not wanted to come to the club or we’ve not got the financial deal right or we’ve not been able to pay the player and the agent, so one way and another we’ve found it difficult to be competitive this summer.
“Hopefully come the end of the window we’ll have got ourselves in order.
“The difference is we’re trying to be in the top six rather than avoiding the bottom six. The level of player you’re looking to buy, what that costs, is harder to get.
“We’re looking at a much more expensive player, on bigger wages, coming from a higher level, so that’s what we’ve found difficult.”