Theoretically, the 'mobile version' of any app for a website, take Reddit.com or Facebook.com for example -- should have all the client side libraries already downloaded.
So, once a user taps the app, their phone does all the CPU crunching, loading images, etc. This is why Facebook is like 100mb of code. It's got the logo, CSS, all that kinda stuff loaded up.
The mobile app will reach out to your server for computation. "What courses does this user have?" and send back that request. What's sent is a small, simplified json array of data with course information. I would imagine this uses around the same server CPU / RAM.
Apple argues that if your mobile app doesn't provide many more features than simply caching a website, it's not a valid mobile app. Things like using in-app-purchases, camera and file storage, etc, make it an app.
So you could also just use CloudFlare.com to write local caches and effectively gain the same performance improvements as a mobile app would.
I've yet to look at the Moodle app, but this is my general knowledge of building apps.