Yadav's last appearance for India was at Perth against Australia in December and he was only included in the side for the second test with the Pune pitch sporting a tinge of green.
Having already dismissed South Africa's openers on Friday, Yadav sent back number three batsman Theunis de Bruyn for 30 with wicketkeeper Wriddhiman Saha taking a sharp catch.
Shami had earlier picked up his second wicket and the first of the day for India in the third over by sending back nightwatchman Anrich Nortje.
Du Plessis and Quinton de Kock then fought back for South Africa and showed determination and positive intent against India's spinners during a 75-run stand after the side had been reduced to 53-5 at one stage.
Off-spinner Ravichandran Ashwin broke the partnership by bowling out de Kock for 31 in a body blow to the touring side.
Du Plessis played some classic drives and effective sweep shots, hitting eight fours and a six during his aggressive 76-ball innings. (Reporting by Sudipto Ganguly; editing by Amlan Chakraborty)