He had been out of work since parting company with the Robins in November.
Crawley, who were relegated from League One earlier this month, had been without a manager since John Gregory left the West Sussex club on 9 May.
"My job is to put a competitive squad together that will challenge at the right end of the table," 45-year-old Yates told the Crawley website.
He spent almost five years in charge of Cheltenham and guided them to the League Two play-offs in 2012 and 2013.
After successive top-seven finishes and unsuccessful play-off campaigns, Cheltenham finished 17th in League Two in 2013-14.
And ex-Kidderminster boss Yates was then sacked late last year, following a run of four successive league defeats that left them 18th.
He was the third-longest serving manager in England's top four divisions at the time of his departure from Whaddon Road.
"I have been out of the game for a few months and when this opportunity came up it really excited me," he said.
"There's a big challenge ahead but one I am really looking forward to."
Gregory, 60, parted company with Crawley earlier this month, having spent the past six months recuperating from heart surgery.
Dean Saunders was placed in interim charge of the Reds in December, but was unable to save the club from the drop to League Two.
The 50-year-old former Liverpool and Aston Villa striker was appointed Chesterfield manager last week.
Crawley chief executive Michael Dunford said that Yates stood out among "some very strong candidates".
He added: "He has a very deep knowledge of the level we find ourselves at next season and is a first-rate coach.
"The board spoke to several people in the game who have worked with Mark and they were all very positive about his credentials, his knowledge and his enthusiasm."
Crawley Town have appointed former Cheltenham boss Mark Yates as their new manager on a two-year deal.