In the case of a
List I would say there is a good chance that between views what is likely to happen is that a smaller number of items are added/removed to the list, and most of them stay the same. Since its the same item, it occupies the same memory. It would certainly be interesting and informative to make an example UI that does exactly this - and of course a variation that changes all the items in the list too (and compare the performance in both time and memory of that against just doing lazy against the whole list).
Either way, I think you are right, there are always going to be some pathological cases that make inserting
Html.lazy everywhere automatically not such a good idea.