- Emulate success of Java with something familiar to practictioners
- Prepare groundwork for fixing Java’s errors
- Create next-gen system for coding on windows
- Bring VB6 developers to .Net
- Bring VB6 developers to the web
- (Later) Promote component-centeric development and encourage ecosystem
- (Later) Control ecosystem quality and growth
- (Much later) Adopt lessons from external systems
- (Much much later) Encourage open source
- (Lately) go cross-platform
- VB
- F#
- C#
- Many others