Looking at the source code of another VMWare C# wrapper on CodePlex, turns out that most VMWare interfaces represent VMWare handles. This is a good decision from the design point of view, but the implementation in VMWare VIX API is wrong: it should be returning objects that implement multiple interfaces, instead it returns one of the interfaces that you can happily cast to another.
This does answer the question of how to get the display name of a VMWare snapshot.
Let’s add a wrapper for a VIX handle.
Then the snapshot’s name is a cast to a IVixHandle which implements GetProperties.