With private VLAN different vlan traffic can restricted and control . Even this we can accomplish with access-list configure my question is private-Vlan is enhancement for access-list or what ..
While you can use ACLs to restrict IP packet traffic within a VLAN, a private VLAN works on the frame and port level, regardless of which network-layer protocol is used.
So, private VLANs are somewhat more restrictive, but let you control the switched path within a VLAN (L2) only. You cannot use a private VLAN to filter routed traffic across VLANs, over an SVI (L3) for instance.
Generally, they are different things even when there may be similarities.
PS: Of course, there are L2 ACLs as well (thx Ricky) but they're not very common and based on MAC addressing, not ports.
PVLAN represents an entirely different model of enforcement than ACL's (which, themselves, are potentially several different models - ex VACL vs PACL vs RACL). PVLAN can even potentially coexist with ACL's.
To recap - there are three different types of ports with PVLAN-
Isolated Ports: Receives any traffic transmitted on the primary VLAN. Any traffic transmitted is automatically remapped into the auxiliary VLAN.
Community Ports: Receives any traffic transmitted on the primary VLAN and any traffic transmitted by its community members on the community's auxiliary VLAN. Traffic transmitted onto community ports is mapped into either the community's auxiliary or the general auxiliary.
Promiscuous VLAN: Receives traffic transmitted on any of the auxiliary VLAN's as well as any traffic transmitted in the primary VLAN. Promiscuous stations transmit all traffic on the primary VLAN (...and thus all other ports will receive this traffic).
In contrast an ACL matches on specific packet/frame attributes and, depending on the platform, can be used to modify, drop or send said packet/frame. With a great deal of ongoing work you could simulate the operation of a PVLAN setup using ACL's (...again, depending on platform) but it would be incredibly cumbersome and likely brittle.
It might be helpful to consider that PVLAN deals in absolutes - two ports (...and anything on those ports) can either communicate directly, can communicate via remapped VLAN's or can't communicate at all. No traffic sent by a host on an isolated port will ever reach another isolated port. If the intent is to have an arbitrary number of devices on an L2 network that shouldn't speak to each other but which can reach out via L3 then PVLAN is super-efficient. If you're just worried about blocking RDP traffic between hosts, it's the wrong tool.
In contrast, an ACL could be quite specific - say, allowing UDP packets on port 123 shorter than 1000 bytes between two given hardware addresses. Great if you're trying to specifically block a particular port or protocol, or even entire sets of hosts, but lots of config maintenance and moving parts required.
Truthfully the most common use-case is using both technologies - PVLAN to implement isolation on the local network and an L3 ACL (..or firewall) to manage connectivity to the broader environment.