You can manage size before upload by messing web.config’s maxRequestLength attribute and
you can also validate and cancel posting of the form using customvalidation control and you can write what ever logic on the customValidator’s code part
A more nice approach can be found here http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.fileupload.saveas.aspx