It won't cost much in terms of runtime performance (even coroutines that do have suspension points are very cheap, it's the threading itself that is costly). The compiler adds an extra parameter to the function, but that would be about it.
In terms of usability, yeah making everything suspend would be pretty cumbersome. Maybe having 2 separate classes (one suspending, one normal) might be better