Yeah stay away from "mega" discount hosts. Asp.net applications demand a bit more then your typical host wants to really provide. Don't get me wrong you don't have to pay an arm and a leg for a good host, just realise you can get some really bad hosts. For example: webhost4life is a horrid host when it comes to DNN. I tired them and they kept saying it was my sites. Yet I moved the exact same site to easycgi and it blazed along faster then my fingers could click, but their interface and hosting options were limited, but boy do they throw some serious power around. Overall I am using 3essentials, and recommend them or ihostasp or maxiumASP all 3 are good solid DNN hosts.
Now your host was somewhat correct DNN standard installation is about as slow and bloated as you can make a website be. HOWEVER, if you turn on compression, set moderate log file timeouts or more importantly shut off a bunch you don't really need, the resource amount of your website will be a small tear drop. Now for the initial load issue, well its just part of IIS and asp.net. There is a service called that manages your IIS application pool and asp.net calls to it. The default time out is around 20 mins for most hosts. What this means is when you first visit your site the IIS loads up the site and "turns-on" the communication paths for the client-server relation, and caches the framework into memory and prepares the site for use. If no calls are made after around 20 mins, the server goes "wait why am I wasting memory on this application that is dormant" and then it goes poof and cleans the memory out. The next time someone visits your site the whole loading process starts over. The work around to this is to use a keep-alive service / application which makes calls to your DNN installation once every 10 or so mins. This makes the server think the site is still active and holds all that initial loading in memory. Thusly making your site forgo all that inital allocation.
Then finally there are 3rd party options like pageblaster, (latest version worth it, and well free to community version) they do things like saving cached versions of your dynamic pages as html pages to allow that first page load to really be a static call, and less dynamic, but if your content doesn't change much this is excellent, way to save on resources.