I'm sorry to say this, and I don't want to be offensive, but that is quite possibly one of the least efficient methods of handling this in XNA that I have seen thus far. Firstly, you aren't using object-oriented programming at all in this system, which completely defeats the purpose of using C# to begin with. You even avoided placing the X and Y coordinates of the sprite within a single two-dimensional Vector (Vector2), and instead passed a new object to it with every render call, which adds more work to what needs to be done within the Draw() method.
Next, your game logic is far from efficient, and (although, it is incredibly unlikely that this will be a problem in this example, with larger examples and games, it can become a problem) doesn't take the time delta into consideration at all. So, if your game lags, you are basically completely ignoring what should have happened during that time. Even your calls setting your X & Y coordinates could be better done as xxx += 1 and vvv += 1, rather than xxx = xxx + 1.
You have a good bit of work to do before this is anywhere near something that could truly be considered even a walking demo. I recommend you do a lot of reading and learning, and get used to object-oriented programming. As a matter of fact, my tutorial series at ZFGC University is going to be opening to the public (hopefully) by Monday. It covers creation of a Legend of Zelda game engine with XNA. You would have a good bit to gain from reading it.