"A C#-os var itt milyen típus ad neki?"
Amilyen típusú értéket adsz neki a legelső helyen, olyan típusú lesz. Leginkább kényelmi szempontja van, pl.
Dictionary<string, List<Kutyafule>> kutyafulek = new Dictionary<string, List<Kutyafule>>();
helyett egyszerűbb egy
var kutyafulek = new Dictionary<string, List<Kutyafule>>();
".NET alatt meg tudom azt csinálni, hogy ha A lib a ZLogging 1.4-es vewrzióját akarja, s hozza magával, míg B lib a ZLogging 2.1-set (s ezek még csak API szinten sem kompatibilisek), akkor én használjam mindkettőt, s az A és B lib ne akadjon össze?"
Meg, az sem probléma, ha ugyanabban az assemblyben kell használni, lehet aliasolni a névtereket.
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™