A huge step forward.
I was going into Assassin's Creed II with the little hope that Ubisoft really learnt from the mistakes the made in the first game. I was wrong. They did not only learn from the mistakes, they pushed AC2 into a whole different league.
My biggest complaint with AC1 was the main character. Altair never felt like a real human being, his whole background remained in the shadows. It was impossible for me to relate to him. Ezio in AC2 is a huge step forward in that regard. He is a fleshed out character, you accompany him from the age of 17 even before he is an assassin. The story that is told around Ezio draws me in much more than the first one, the relationships he has are believable, even funny at some points.
The game mechanics have been improved, too. I got frustrated in AC1 pretty fast, especially about the behaviour of the guards. At some point it was nearly impossible to go from point A to point B without being attacked. The notoriety system in AC2 solves this problem. If you are notorious you can kill certain officials to reduce your 'wanted level' or bribe heralds or remove wanted posters from the walls.
If you have to fight, it is fun. It still relies heavily on counter-attacks, but the option to disarm your enemy feels good and overall the fights have a better feel to it.
The game world is stunning. The visuals might have their flaws, like some bad textures and some fog in the distance, but the realism if you compare the cities with its real-world counterparts is astonishing. If you like to you can even learn a thing or two about most of the landmarks by browsing the games extensive database.
AC2 is a great game, if you liked the first one you will love this. And if you did not like the first one, you may still like this sequel. For me the game is on par with my favourite games this year, Batman: Arkham Asylum and Uncharted 2.