Microsoft System has developed a technology called DOT NET and Sun Micro System has developed a technology called JAVA. Both this technologies are called distributed technologies. The technology DOT NET will run only on that operating system's which are provided by Microsoft (as on today). Hence DOT NET technology is platform dependent technology. Whereas, the technology called JAVA will run on all operating system's irrespective of their providers hence JAVA is called platform independent technology.
DOT NET technology is not freely downloadable where as JAVA freely downloadable. DOT NET supports Microsoft developed design patterns (general designed patterns are not supported) whereas JAVA supports all the design patterns which are available in IT. Design pattern is a predefined and proved rule by third party industry experts to avoid the receiving problems which are occurring in software development.