Only you can judge whether you need to upgrade or not. I upgraded myself to a virtual server a few months ago (my blog crashed completely on shared hosting) and it's benefits range into two parts.
Those who state the performance change is indifferent probably haven't pushed their shared hosting hard enough

. Mine existed in swap space for months before I moved (you could tell by the sluggish loading times). A virtual server should, at a minimum, come with a level of fixed RAM and CPU availability, with perhaps burstable CPU if it's not being used. No one on the same physical server should be capable of crowding you out - on a shared host that happens all the time.
Secondly a virtual server offers you complete control. You can compile, optimise and setup a sweet caching system which is missing from most shared hosts for example. You can also completely screw up of course

. But don't let fear turn you off - learning how to run a linux system is a great experience.
In terms of requirements.
1. Know how to use the linux distributions package management system. Most stuff can be automatically downloaded, configured, and added to init scripts (let you turn stuff on and off) with very little effort. Only compile when you absolutely need you. Ubuntu and Debian, for example, use the "aptitude" package manager.
2. Know how to configure and compile things. Package systems give you access to thousands of simple to install apps and libs, but you will eventually want to compile things either for newer version, security updates, or simply to optimise/customise.
3. Get to know the local editor well - the command line editor I use most is "nano" (some would kill me for using such an underpowered option but I prefer the simplicity

). If it's not installed by default - certainly do so.
4. Get introduced. Slicehost have some excellent documentation about setting up a Ubuntu server from a fresh instance. It has a fair few tips and ideas which will broaden the questions you'll have later. Just because you may not use Slicehost doesn't mean it's documentation is not relevant - any VPS documentation for getting started would be relevant.
5. Ask many questions - we have a linux forum here, no?