Hitman: Blood Money is one of the best games ever made.
Agent 47 is one of the worst game characters ever made.
H:BM warms the cockles of my robotic, unfeeling heart because it is primarily a simulation game. To wit: you are given a set of tools, an area, and an objective. There are no "go here" arrows. There are no forced "do this" sections except as direct mission objectives. You are free to go about completing your objectives in whatever manner you choose, to make use of whatever resources and ideas you see fit.
Let me talk for a second about "choice" in games. As someone else pointed out more extensively than I will, there is a difference between "choice" and "consequence" (or "cause and effect"). Choice in, say, Mass Effect is very limited in terms of its effects. The choices you make in Blood Money, on the other hand, exist as part of a living setting - people respond fairly naturally to the things you do, which results in complications and failures. You also generally have to make these choices in real time, under pressure, rather than at your leisure.
More than simply being part of gameplay, though, the choices in Hitman allow for something fairly rare in computer games: actual "roleplaying". Hitman is a game where you can have a "character", and play the game in the way you think fits that character. For example: what are your character's motives? Are they kind-hearted and compassionate, cold and professional, or psychotic and hateful? When "choices" arise in Blood Money, it's usually things like "I've been spotted. Do I kill this innocent or let them go and risk jeopardizing the mission and revealing my identity" - decisions that must be made on the fly, and under duress.
For the most part, Blood Money does an admirable job of keeping its "story" out of the way and letting the natural story of player agency do its own talking. However, there is that issue: why is Agent 47 one of the worst game characters ever made? Because he has a personality already. In one of the rare cases where a game lets the player exhibit their own view, make choices, make decision, and have potential motivations, 47 already has ideas about all those things. 47 is a cold, professional killer. 47 kills witnesses. 47 doesn't care about money so much as he just does what he's told. 47 is not "your character". 47 is 47. Now obviously this isn't the Blood Money team's fault - 47 was established in the earlier, less well-developed games, after all. But it's representative of the problem of a "single protagonist" work.
There are many important things that a character's motivation adds, but the most direct one is a sort of "moral calculus". Which is to say: if a character believes it is right to murder a character because [x], how far are they "allowed" to go to kill that character while still being justified? Again, 47 doesn't care about casualties and bystanders, canonically. But imagine a character motivated by justice or revenge. Imagine a character who believes that a murderer should die, but becomes worse than the murderer in the attempt to carry out their punishment. Imagine a character whose stated motivations were questioned and challenged during the course of the game by situations where they were forced to choose, naturally, between one ideal and another.
Imagine, in short, a Hitman-style game where you made your own protagonist - where your actions and your own thoughts as a player reflected on the character you were shaping. Imagine a Hitman-style game where you weren't an assassin, but instead some sort of secret agent operating in similarly-sized mission environments. Imagine if your objective was zoomed out even more than "kill x" - imagine if all the objectives were about accomplishing something, and you simply had to find the way to reach that goal. All of this is not to say that I don't enjoy Blood Money, of course, but this is simply finding ways to improve on a well-polished base model. It's also important to understand that "roleplaying game" doesn't just mean numbers and level-ups, but referred initially to the idea of actually taking the role of a character and behaving like you thought they'd behave.