The biggest change in 2K12 was the way pitches lost their effectiveness if you overused them. It created a necessity to really think out your strategy per hitter, and it was surprisingly realistic.
You had out pitches, and you had decide if you wanted to save it and show a hitter's favorite pitch by throwing out of the zone, or trying to get ahead in the count. It just did a good job of making you think like a pitcher and catcher.
This eliminated the ability to spam any pitch, as guys used to do to throw their perfect games. For me, this made what was already an awesome part of the game, really perfect. It's hard to consider this minor, in my eyes.
2K12 also fixed an issue where you could throw a breaking pitch high and still get a lot of movement. So when you get your curveball up now, there is less break and it is big time mistake.
Hitting was largely the same, but getting the check swing fixed was a significant improvement. The broken check swing in 2K11 really hurt the game, and I eventually just went to classic hitting.
Also, the fatigue in 2K12 was great for position players, but it was revolutionary for pitchers. By showing pitch counts, it made it managing your bullpen so good. Going one more inning with your starter could impact his next performance. And it forced you to really think out over an entire series who you wanted to bring in from the bullpen.
And it helped hitting, too. The Brewers came into town with a worn out bullpen, and I was able to work counts and really make them pay.
Part of why I see generated pitch counts as such a waste was that this was the first game in which you not only saw a realistic number of pitches, but if you didn't work the counts, both hitting and pitching, you would pay dearly.
This alone made 2K12 a really great upgrade from 2K11, in my opinion. The fatigue and bullpen management made this a, "Just one more game," type of game.