Αυτά που ζητάς είναι πολύ γενικά. Είναι σα να ρωτάς τη σχέση μεταξύ καυσίμων, κινητήρων και αυτοκινήτων.
Εντελώς χονδρικά:
Πρώτον, το ASP.NET και το COM+ δεν είναι γλώσσες. Το ASP.NET είναι το περιβάλλον στο οποίο φτιάχνεις ένα web UI. Το αντίστοιχο του στη Java είναι το JSP. Μπορείς να φτιάξεις σχετικά περίπλοκες εφαρμογές μόνο με το ASP.NET αλλά σύντομα εμφανίζονται προβλήματα, ειδικά αν έχεις πολλούς χρήστες και χτυπάς τη βάση συχνά. Κάτι τέτοιο συμβαίνει π.χ. αν έχεις ένα σχετικά δημοφιλές ecommerce site.
Tο COM+ είναι αντίστοιχο του J2EE. Σου επιτρέπει να δημιουργήσεις components που καλούνται από το web ui ή από desktop εφαρμογές και βρίσκονται κατά κανόνα σε κάποιο άλλο μηχάνημα, όχι στο web server. Το COM+ σου παρέχει κάποια services απαραίτητα για τη δημιουργία n-Tier συστημάτων όπως security, memory , transaction, concurrency, lifecycle management, queueing και ένα κάρο άλλα. Τόσο για το ASP.NET όσο και για το COM+ μπορείς να χρησιμοποιήσεις οποιαδήποτε γλώσσα τρέχει στο .NET Framework, π.χ. C#, VB.Net, C++, J#, Delphi, Perl, COBOL και δεν συμμαζεύεται
Τέλος, η XML χρησιμοποιείται σαν ένα κοινό format δεδομένων σε μορφή text. Αυτό το format χρησιμοποιείται από πολλές τεχνολογίες του .NET όπως το ADO.NET για επικοινωνία με τις βάσεις, Web Services για επικοινωνία με άλλα συστήματα, serialization, configuration, κλπ, κλπ, κλπ.
Η καλύτερη πηγή για εισαγωγικά άρθρα είναι το http://msdn.microsoft.com, το οποίο περιέχει άπειρα white papers, tutorials και overviews. Θεωρητικά άρθρα δεν θα βρεις (πουθενά) απλά γιατί μιλάμε για τεχνολογίες και όχι κάποια θεωρία.
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos