A domain name is a unique web address on the Internet, like www.example.com. Much like buying real estate in the physical world, when you register a domain name it becomes your property in the online world. No two domain names can be the same which means that if the domain name you want is already registered, you are unfortunately out of luck. Domain names can also have different domain extensions, or TLDs, attached to the end of it. For example, you may own www.example.com, however www.example.net may still be available.
Migration or transfer services are often free or offered at a reasonable fee. These services help move your existing site to the new hosting provider. They can save a huge amount of hassle. Just remember that the migration process is often automated, and may fit in with the host's processes and needs rather than yours. Not everything may migrate, and you may find the organization of the newly migrated site makes for harder maintenance in the long run.
Traditionally, Windows-based hosting costs more money than Linux hosting as a result of the licensing fees assessed by Microsoft (Linux is open source and therefore free to use). However, this is less true today. Some companies, like 1&1 and GoDaddy offer hosting packages that cost the about same, regardless of which operating system you choose to run.