Target Groups: Target group is used to route network traffic via specified protocols and ports to specified instances and also to allow accessing many applications running on different ports but the same instance.
Autoscaling Group: Autoscaling Group(ASG) is basically a group of identical instances. New instances can be launched in this group for scaling up purpose, based on certain scaling policies. Similarly, existing instances can be terminated based on scaling policies set by the user. This is used to ensure that at any specific point of time, your application is up and running on some specified number of instances and when the threshold reaches, the group scales up and down accordingly.