Rohan,
"state" refers to the status of certain elements in the active ASA's memory that represent, generally speaking, connections through it and resources currently allocated. Most commonly we think of things like the NAT table, TCP connections and UDP flow "state". A complete list of the things that are included is in the configuration guide (link).
When we replicate those elements from the active to the standby unit, that is considered stateful. The link used to do so can be the same one as is used for "basic" (stateless) failover or it can be a dedicated one.
By using stateful failover we minimize the impact to data flows when a failover occurs. The goal is to not lose any and not even cause a TCP session to be reset or UDP packet to be lost.