There isn't a fixed maximum blocksize in Monero.
Monero uses an adaptive blocksize limit that imposes a quadratic penalty on increasing the blocksize above the median blocksize, with this penalty proportional to the emission. It can range from zero for no increase to the full emission for doubling the blocksize (the maximum allowed), from the median. This penalty also is not "refunded" if the blocksize falls below the median. Another critical aspect of this is that Monero has a tail emission of 0.6 XMR per block, since otherwise there eventually would be no penalty.
You are of course correct in that cost in real terms of Internet bandwith will of course be a limiting factor, so will other costs such as computing power, memory, digital storage etc.; however these costs change with time so one cannot determine a fixed maximum blocksize from them.
Edit 1: Monero's block time was recently changed in a hard fork to approximately every 2 min.
Edit 2: The idea is that in order to increase the blocksize miners will demand extra fees in order to compensate them for their loss in emission. If there are additional costs such a Internet bandwith for example to mine a grater block then the fee will need to compensate for those additional costs ion addition to the loss in emission. So in effect the market sets the maximum blocksize in Monero.
Edit 3: It is also fair to say that the Internet bandwidth limit has not been tested in Monero and it could be a fair amount of time before it is tested if for example the cost in real terms of Internet bandwith falls at a faster rate than the rate of growth of the Monero network.
Thanks for the info.
Actually this does give enough info for a theoretical limit.
Barring everything else CPU , Memory were Fast Enough,
The United States Average Upload Speed: 5.2 Mbps translates to (.65 MB/s)
Your Block Speed of ~120 Seconds ,
120 seconds * .65 MB = 78 MB Maximum Block Size
So at our present level of internet performance the Maximum your block size could be is
78 MB.
That would be just enough time to transfer it to 1 other node.
So odds are a real world max for 2 nodes to confirm is only 39MB or 4 nodes to confirm is 19.5MB.
So real world wise your block size maximum could be ~19.5MB and no higher until the average internet upload speeds increase.
Hmm ,
With the Excess size penalty fees applied to miners, it will be in their best interest to keep the block sizes way smaller than the above sizes.