Lawrence Finch,
"MMS is 100% a carrier service" is a fairly egregious statement. HOW cellular software integrates carrier information and executes a user's commands/ device config IS MISSION CRITICAL and there are some aspects of the iOS platform that can affect things. You have suggested otherwise which is factually incorrect. That is like saying "The image quality of your streamed show is 100% service provider related" Absolutely it is not. It's heavily dependent on it, but there's a difference between "100%" and "mostly"; one absolves the former of playing any role in why streaming quality might not match what is to be expected.
Here's a working example using the stated issue by the thread's main issue:
While most ppl on this forum I would bet are running into the unstated carrier limit imposed on MMS (Tmobile is, say 3MB, for instance) you might not know that off hand but it's pretty common for an image snapped on your iphone breaches that. iMessage won't have issues sending this of course but let's say your phone says you're close to your storage limit and you have 63 of 64GB occupied. Technically this is indeed enough to send a 3MB image via MMS or iMessage for that matter but it doesn't mean your iPhone won't struggle. it would satisfy any requests made by the troubleshoooting document to ensure you have sufficient storage as this is not an approximation but rather a live reflection with no stated assumed error of a full GB that would be absurd. However, Despite having the capacity, like other machines iPhones tend to have performance issues when at the tail end of storage. Each time you send a message, YOUR DEVICE IS ALSO saving it to your message history in messages to keep in the chain. This is a very simple example of how it's basically doubling your storage and might further stress your device to the point the image won't send simply because it will not save to message history storage despite being saved to the actual device's software in your phone. All the while if you go to check your storage, it'll say you have more than enough for a small image such as 3MB.
This is a very real & valid description in detail of how your hardware's ability to seamlessly integrate with your device's software independently affects your carrier's functionality. The point is this is a scenario I had to resolve myself given ALL of the bullet points were confirmed clear and my carrier settings weren't an issue. There are more scenarios like this as well. Your statement would lead people to think there's quite literally no option when in reality you were just incorrect because you overstepped and had to say "100%". When troubleshooting, be as literal as possible. It's more than likely carrier related, but there are ancillary issues you ALSO must address on your iPhone that is totally unrelated to the carrier.