The $ATT$, $ATC$, and $ATE$ are all average treatment effects averaging over a target group of individuals. The idea is that everyone has an individual treatment effect, and an average treatment effect is the average of the individual treatment effects across individuals in the target population/sample. Individuals' treatment effects vary from each other when the treatment effect depends on qualities of the individual, say, $X$, and different individuals have different values of $X$. This circumstance is known as treatment effect heterogeneity based on $X$. For example, it may be that a medicine works better for young people than it does for old people; there is treatment effect heterogeneity based on age.
When there is treatment effect heterogeneity based on $X$, the average treatment effect for a given group depends on the distribution of $X$ in that group. Returning to that example, the average effect of the medicine will be larger for a group of younger people that it will be for a group of older people. When the treated and control group have different distributions of $X$, the average treatment effect among the treated ($ATT$) will differ from the average treatment effect among the control ($ATC$), and both will differ from the average treatment effect in the entire sample ($ATE$). The treated and control groups will have different distributions of $X$ only when treatment depends on $X$ or a correlate of $X$, which is not the case in a randomized experiment, in which the distributions of all covariates, including $X$, are the same between the treated and control.
In matching as described by Stuart (2010) and Ho, Imai, King, and Stuart (2007) and implemented in the R package
MatchIt, matching does indeed recover the $ATT$ if only control units are pruned away and no treated units are dropped. This is because the distribution of covariates in the matched control group is the same as the distribution of covariates in the original treated group, so the distribution of individual treatment effects will be that in the treated group. However, it is possible to estimate the $ATE$ using matching, as described by Abadie and Imbens (2006) and implemented in the R package
Matching. In this method, the distribution of covariates in the matched sample is similar to that in the original sample.
Note that unconfoundedness and the conditional independence statement you wrote are a property of the causal system, not of a sample (matched or otherwise). It's a statement that says that it is possible to extract a causal effect using the observed data. It's not a description of a sample after matching. If that statement is true about the causal system, then any of several estimators (including matching, weighting, regression, etc.) has the potential to estimate the causal effect without bias.
To summarize, the average treatment effect across groups will differ when the distribution of individual treatment effects varies between the groups, which occurs when individual treatment effects depend on covariates and the distribution of those covariates varies between the groups. The $ATT$ and $ATC$ will differ when the distribution of covariates differs between the treated and control, which occurs in the absence of randomization.
Abadie, A., & Imbens, G. W. (2006). Large Sample Properties of Matching Estimators for Average Treatment Effects. Econometrica, 74(1), 235–267. https://doi.org/10.1111/j.1468-0262.2006.00655.x
Ho, D. E., Imai, K., King, G., & Stuart, E. A. (2007). Matching as Nonparametric Preprocessing for Reducing Model Dependence in Parametric Causal Inference. Political Analysis, 15(3), 199–236. https://doi.org/10.1093/pan/mpl013
Stuart, E. A. (2010). Matching Methods for Causal Inference: A Review and a Look Forward. Statistical Science, 25(1), 1–21. https://doi.org/10.1214/09-STS313