However many seem to have issue's with this though it's really not that hard, and most of the guides online recommend you to either use or buy plugins and such which is really not needed so here a quick step by step guide:
1) Login to your file manager at Cpanel and zip compress the /wp-content/ folder and download
2) View your wp-config.php file in the root WP installation folder and write down your database number, you'll need this in the next step (wp74 is what you need):
/** The name of the database for WordPress */
3) Enter PhpMyAdmin from your cpanel, click on the correct database, wp74 in this case and click Export, don't change any settings and click Start
Now you have all you need.
Install your domain on your new host using add-on function and install a fresh copy of Wordpress.
4) Enter your filemanager at Cpanel again and remove the /wp-content/ folder. Upload the /wp-content/ folder that you previously compressed and extract it in the root WP installation folder
5) View wp-config.php and write down the new database number again.
6) Enter PhpMyAdmin at Cpanel and find the database and click on it. Select all tables and pick Remove from the drop down menu below it. Red rectangle with tables you want to remove appears and click yes.
7) Open the. sql file in Notepad++ (important don't use any other word processor), and use the search and replace function. Search for mysite.com and replace with mysite.org Save
8) Use the import function in phpmyadmin again, you're still in your database if all is correct, select the modified SQL file and wait till it's uploaded.
That's it, your new site works now and even internal links should still work as posts are stored in the database and you replaced all those URL's.