Agripino Sanchez was arrested at his home at about 7:30 p.m. following a two-week investigation.
He was booked into county jail and is being held on $1 million bail, police said. According to the charges, the victim was 10 years old or younger.
Moraga police Chief Robert Priebe said he couldn't yet release any further details about the case because it is still under investigation.
Anyone with information about the case is asked to call Lt. Jeff Price at (925) 888-7049.