The 20-year-old scored four goals in 66 League One appearances for the U's after joining from Everton in August 2016.
Ledson, an England youth international, is to sign a three-year deal ready to join up with the Lilywhites when they return for pre-season training at the end of June.
"He had a great upbringing when he was at Everton as a kid and he has come through the England ranks as well," Preston boss Alex Neil told the official club site. "He has played 100 league games and he is only 20 years of age and he has played at a good level.
"I think it is a great signing for us. I think he has a bright future ahead of him and I think he is the right type of character we want at the club as well. We are losing one of these type of characters in John Welsh and I think we are replacing him with a younger version who can hopefully go and kick on and have a great career."
Ledson added: "I am really looking forward to joining the club. I know there was interest in January and there were a few bids made, but now it has finally got over the line and I can't wait to get started.
"I always saw Oxford as a great opportunity to get games and prove I was capable of playing higher. My time there was brilliant, but I am really forward now to getting back up north and playing for Preston.
"In the last two years I have played in League Two and League One and now I am going to go and play in the Championship, which will be tough, but hopefully I will adapt to it and play a few games."
Ledson secured a hat-trick of individual accolades at Oxford's end-of-season awards, being named Player of the Year and Young Player of the Year as well as winning the Goal of the Season gong.