Karl Besas, 24, was boating with friends Friday night when the group went for a swim, but Besas never returned to the boat.
Halifax County officials say Lake Gaston is 35 to 70 feet deep and that depth hampered search efforts.
The body was found around 2 p.m. Wednesday.
Investigators do not suspect foul play. The body will be sent to the medical examiner's office for an autopsy.
Besas' parents told ABC11 Eyewitness News their son was good swimmer. He also was a recent UNC graduate and an accomplished motorcycle racer.
In a written statment Wednesday, they said: "We would like to thank each and every agency, volunteer and individual for their tireless efforts during the search. We can not express enough of our thanks for the overwhelming love and support that we have received during this tragic time."