Generally, themes page.php is used as default page template. But if you wants to create a custom page template, then you just need to copy page.php codes and save a new name like template-custom.php . You need to add this code in the very beginning. Additionally, you can add custom php codes, wordpress loops, HTML codes as you wish !
<?php /* Template name: Custom */ ?>
Now go to Dashboard > Pages > add new, you will see a drop down option in right side, where you can select your page template. Done !