C++ and .NET aren't comparable. As in, it makes no sense to say you could do X in C++ or .NET. You can write for .NET in C++, Python, Ruby, etc. Most people use C# because it's a) very productive, b) has a rich set of abstractions (anonymous functions, tuples, etc.), and c) has excellent official documentation coupled with an enormous, helpful community.Either way, in the end it seems your problem is not so much with using .NET (as C++ would have had the same problems you comment for example) but with doing a native app. And the debate of native apps vs web apps has no clear winner.
iOS apps are only harder to pirate if you're stuck in Apple's walled garden. By default Apple only lets you run software you've bought through their store. But since jailbreaking is a protected right in the US and there's an abundance of freely available software that will do it for you automagically, nobody who would pirate the PDF is going to have any trouble pirating an app.Apps are harder to pirate (especially on Apple) vs a PDF that I could grab off certain sites in less than a minute.