Hi,
If the basic Upload File control is good but not available on the place you want to use it you could edit the Control scope when editing a form control.
If you want to create a new custom form control you can follow these instructions:
https://docs.kentico.com/display/K8/Example+-+Developing+custom+form+controls
I'd copy the Kentico 'Upload file' control which is already present and make your customizations in code.
Greets,
David