Noch als Teil der Brjansker Front und ab 2. September 1942 bei der Woronesch-Front führte die 38. Armee im Raum Woronesch Verteidigungs- und Offensivkämpfe. Von Januar bis März 1943 nahm sie an der Woronesch-Kastornoje-Operation (24. Januar – 2. Februar) und der Charkower Operation (2. Februar – 3. März) teil, bei denen zusammen mit der 13. und 40. Armee die Städte Kastornoje (28. Januar), Tim (5. Februar) und Obojan (18. Februar) befreit wurden und bis zum 3. März die Region nordöstlich von Sumy erreicht werden konnte. Im März 1943 kämpfte die Armee in der Schlacht um Charkow (4. – 25. März), am 23. März wurde die Armee kurzfristig der Kursker Front und am 26. März der Woronesch-Front zugeteilt. An der neuen Frontlinie Korenevo – bis 55 km nordöstlich von Sumy hielt die 38. Armee bis August 1943 ihre Stellungen. Im Verlauf der Kursker Schlacht (5.–23. Juli) deckte die 38. Armee die Hauptstreitkräfte der Front vor feindlichen Angriffen aus dem Nordwesten ab und beteiligte sich an der Abwehr der feindlichen Offensive in Richtung Obojan und Prochorowka. Ein Teil der Armeetruppen traten dabei in den Verband der 40. und 69. Armee über. Mit dem Übergang der sowjetischen Truppen in die Offensive rückte die Armee südlich der Stadt Sumy vor und bildete das Verbindungsglied zwischen der Woronesch-Front und Zentralfront. Im September 1943 beteiligten sich die Truppen der Armee an der Befreiung des linken Dnjepr-Ufer der Ukraine. In neuerlicher Zusammenarbeit mit der 40. Armee erfolgte die Rückeroberung von Sumy (2. September), Romny (16. September) und Priluki (18. September). Ende September erzwangen die Truppen den Dnjepr-Übergang bei Ljutesch nördlich von Kiew, danach bildeten die Truppen ein Sprungbrett über den Dnjepr im Raum westlich von Swaromje und Nowo-Petrowsk.