OK, for those of you who weren't born with machine code imbedded in your brains, let's discuss what this stuff is. Since I had to take the C programming class three times to understand what the heck was going on, I qualify.
1. The first thing to consider is that with the WordPress upload, you are uploading through the browser, instead of the tools designed for that kind of work, such as telnet (the beloved tool that is no longer acceptable because of security issues), command line and FTP.
2. The limits on the file size of an upload file can come from several places:
a) your web host could limit the size of the files you can upload through the browser. They could be just plan cheap in their resources, or they could be looking out for security.
b) your web host could limit the size of the files you can upload, but they will allow you to make changes. Here is where the php.ini file comes in. But, your web host may deny you access to that lovely file.
c) your software, such as WordPress, may limit your upload because of all the other issue. WordPress software seems to adjust itself for the lowest common denominator, including web hosts in Outer Mongolia that haven't upgraded their hosting software since 1910.
d) you are asking your browser to package and ship those large files. That task was not in it's original job description, and it would choke on the job.