The code for VSTO isn't inside the document as it would be using VBA. Instead, it's connected. This can be both good and bad (and this relationship is very likely to change in the next version). It's good because a Word document or an Excel spreadsheet on a user's desktop can use programs in an Assembly on a server somewhere else. This give the document or spreadsheet the advantages of client-server computing, such as upgrading all the desktops that use the assembly in one place. Microsoft also likes to point out that this makes the code "managed code" - that is, it's really IL (Intermediate Language) code that is managed by the .NET CLR (Common Language Runtime) and this protects your application from all kinds of problems, threats and potential errors. Managed Code is the future for Microsoft software.
A sign that Microsoft isn't really targeting VSTO for the mass market quite yet is that they aren't making it too easy or cheap to get and use. It's not a free download like the .NET SDK (a much, much more massive body of code). But it is available online for MSDN subscribers and it has been passed out free at a lot of Microsoft seminars for developers! If you decide to just buy it, the retail price is $200! - surely a disincentive to the casual looky-loo programmer. Finally, you need the latest version of .NET (Framework 1.1) and the latest version of Word or Excel to use it.

