16F877A is more up-to-date - you are not likely to even be able to get non-A versions of the chip soon.
One of the main differences between the A and non-A versions is they program differently. An up-to-date programmer will do both, an older one (like one of the ones I have) will only do the non-A version.
- Jon