Well, no, not really - it's up to the browser to say how big the file is (the server has no way of knowing, because it doesn't have the file yet), and the browser can't say until it uploads the file...
Pretty much any workaround (eg. a Javascript submit handler that reads the filesize and decides whether to allow it or not) opens a vulnerability (and is hence blocked).
While you can specify a maximum file size in the form itself for the browser to read, it's only an advisory and there's no guarantee that it will be heeded.
In short, if the user wants to waste their time with an oversized upload only to have it refused, that's their lookout - after having the site go "What did I tell you before about file sizes, Thicky?" a few times maybe they'll learn (but somehow I doubt it 😉
(I wonder - is it possible to have the server abort a file-upload-in-progress if it's too large and have it redirect the browser to a certain page if it does? Scratch that - of course its possible - but is it feasible? I dunno.)