The graphics are pretty good in themselves. However, when compared to the current state of the art gaming technology, and taking into account the hardware requirements (min. shader model 3), in this context the graphics are rather average. In other words, in my opinion, with the hardware requirements this game has, much more impressive graphics could be possible. I really can't see anything in this game that couldn't probably be achieved with an older shader model 2 graphics card.
(For some reason more and more games nowadays require shader model 3, usually because they use the Unreal Engine 3, just because they can, but they don't seem to fully utilize the potential of the graphics cards.)
So all in themselves the graphics are great, but put in context (contemporary games with better graphics, hardware requirements of this game...) they are a bit tame.
You have two sidekicks in your team, and they work pretty well. They almost never hinder you or get in your way, they can take good care of themselves (as long as you don't send them to a suicide situation) and they actually are useful as team mates in difficult situations (for example in situations where the only practical tactical choice is to barge into a room and secure it, eg. because you don't have time for anything else).
It's also quite easy to give them commands (the most common commands "go there", "stop" and "regroup" are very easy to execute, and situation-dependent commands can be chosen from three keys). Most often the sidekicks are able to perform the commands safely, without putting themselves in danger (eg. they will try to search cover, etc).
This game is not utterly linear, which introduces some cool tactical elements to it. For example if the mission is to secure a big room, there may be eg. six possible entrances to choose from, and you have several tactical options you could use. For example, your team could just try to barge in and kill everyone before getting killed, or you could put your team to watch your back and furtively just open the door and try to kill enemies one by one from behind cover, or you could even send your team to another door so that you can attack from two entrances at the same time, plus more.
At least the "realistic" difficulty level (I didn't try the easier one) is extremely unforgiving about taking damage: You can only receive a very limited amount of damage (which depends on where you are hit), and if you die, you will have to start from the last checkpoint. You can't save freely. You only have checkpoint auto-saves.
Quite surprisingly this works pretty well (which is why this has a plus and not a minus). At first it might seem like a braindead idea, but in fact it makes the game more interesting: Dying becomes something you really don't want to do, which will force you to play more carefully and tactically. The game really becomes more "realistic" (as the name of the difficulty set implies) in that you really don't want to die, so you have to be careful. In most situations you can avoid dying by being careful, so the balance in difficulty is pretty well done for the most part.
On the other hand, there are a few places in the game which are extremely hard. So hard that they really don't seem to belong to the otherwise balanced difficulty of the game. There's especially one battle situation near the end of the game which is practically impossible to play through. Even though I played that part approximately 200 times, I just couldn't pass it.
(There exists a bug in the game which can be abused to get past that situation without actually having to fight. I had to abuse this bug in order to get through because I just couldn't get past it otherwise. In my opinion this does not fit the otherwise well-balanced game at all.)
The checkpoint element becomes annoying in such a difficult situation if the checkpoint in question is not right before the difficult fight. The practically impossible fight I described above has such a checkpoint. It always takes several minutes before you can try the difficult fight again, which can become quite irritating.
One irritating situation is when it's not enough to protect yourself and your team, but some device (this happens a few times during the game, and not surprisingly also during the impossibly difficult fight above). The device gets broken very easily and there's no way to protect it other than try to kill enemies as fast as possible. If the device gets broken, you lose, period. This introduces a level of difficulty that (along with the checkpoints) can become irritating.
Approximately by the second half of the game, the game perhaps becomes a bit monotonous. There's a fair amount of variation of scenery and surroundings, but it's still always the same thing with regard to gameplay. The gameplay stays almost completely the same during the entire game, which can become a bit tiresome. Maybe some more variation in the gameplay could have been a good idea.
It didn't become so boring that it would have stopped me from playing to the end, though.