The Spaniard, who recently became the youngest ever winner of the World Series by Renault title, replaces Jean-Eric Vergne who announced his departure from the Italian team earlier this week.
“I am really happy to have landed the drive with Scuderia Toro Rosso,” said Sainz, who at 20 is three years older than new team mate Verstappen.
“Ever since I have been part of Red Bull’s Young Driver Programme, this has been my aim and I want to thank Red Bull for putting their faith in me. I have had a very successful season in World Series by Renault this year and now I am looking forward to taking the step up to Formula One.
“I tested for a day with Toro Rosso last year and I liked the atmosphere in the team. In the next few months I will be working hard on my preparation, ready to get in the cockpit in Jerez for the first test of next year. It will be nice to make my ‘official’ debut as a Formula One driver in my home country!”
Toro Rosso team principal Franz Tost added: “With Carlos Sainz joining Max Verstappen in our driver line-up next year, we continue the Toro Rosso tradition of providing youngsters from the Red Bull Junior Driver Programme with their first steps in Formula One.
“I have watched Carlos progress through the junior categories, always improving as he moved higher up the ladder, culminating in a well-deserved win in this year’s World Series. However, I also remember the day’s testing he did with us at Silverstone in 2013 in the STR8. He really surprised me and his engineers that day, with his mature approach and his speed.”
The son of double world rally champion Carlos Sainz, Sainz Junior began his single-seater career in Formula BMW, before moving up the ranks through Formula Renault 2.0, British Formula 3 and GP3.
Earlier this week he added to his two previous days of F1 testing by taking the wheel for Red Bull in their final test outing of the year in Abu Dhabi.