What are the main principles of SQL Server AGs depending on WSFC?
Should not the current WSFC host also be the primary AG server?


No.  The hosting of the core cluster resources is independent of the AG primary.  Generally speaking, it's not super important which server is the WSFC host when dealing with a WSFC cluster for SQL Server Availability Groups.


  How does the listener work? In our case, we have multi-subnet networking, and the listener's DNS name always resolves to 3 IP addresses among which one belongs to the current primary AG server, and works for connections. Does WSFC determine the listener's addresses?


This part mostly happens on the client that's connecting to SQL Server.  The client gets that same list of IPs from DNS, and then tries each of them until one succeeds.  The current primary server will respond and either accept the connection or redirect the client to another server in the cluster (depending on connection settings and other config like read-only routing).


  Is there any other principle (except quorum) that AG depends on WSFC?


There's a neat breakdown on this in the docs as well: Relationship of SQL Server AlwaysOn Components to WSFC

In general though, the concept of quorum (which I'll take to be a part of the larger health monitoring / failover concept) is the most relevant one for WSFC and AGs.