A biographer of General James Longstreet, Jeffry D. Wert wrote that Longstreet was the finest corps commander in the Army of Northern Virginia. He said: "in fact, he was arguably the best corps commander in the conflict on either side."
What happened between Longstreet and Lee at the Battle of Gettysburg? First of all, Longstreet did not get to the battlefield until late in the day on July 1. Meeting with Lee, he advocated a strategic movement around the left flank of the enemy, to secure good ground. Instead lee exclaimed, "If the enemy is there tomorrow, we must attack him."
Many historians agree that Longstreet did not aggressively pursue Lee's orders to launch an attack as early as possible the next morning. It was 4 p.m before he began his assault; competently against fierce Union resistance, but it was largely unsuccessful, with significant casualties.
That night, Longstreet failed to meet with General Lee to discuss the day's battle. This failure to communicate resulted in disaster on July 3rd. Lee ordered Longstreet to coordinate a massive assault on the center of the Union line, employing Pickett's division and brigades from A.P. Hill's corps. Longstreet knew this assault had little chance of success. Longstreet claims to have told Lee.
Pickett's Charge suffered the heavy causalities that Longstreet anticipated. it was the decisive point in the Confederate loss at Gettysburg, and Lee ordered a retreat back to Virginia the following day.
Someone had to "take the fall". Lee was the hero and Longstreet became the scapegoat. That's my opinion. Would love to hear yours.