I would like to to save InfoPath form as draft with required field before submitting the form. It should save as the form as draft when user clicks on Save button.
How can I achieve this functionality?
Instead of setting the field as required, add a custom validation rule. Add a field to your form (doesn't need to be displayed on the form) called "Status" (for example, name it however you like) and default it to Draft.
Change your submit button to use rules and set the new status field to "Submitted" prior to submitting the form.
In your custom validation rule on the field you want to require, have the condition be if the field is blank and status is not equal to "Draft".
Effectively, the idea is that the field can be blank and valid when the "Save" button is clicked (which submits your form to your SharePoint library without changing the status from Draft) but once the "Submit" button is clicked and the status changes to "Submitted" the custom validation will run and prevent the form from submitting with the field blank.