Hi sachandio,
As the graph below shows, MPLS L2VPN provides a layer 2 connection between CEs, while MPLS L3VPN provides a layer 3 connection between CEs.
In an L2VPN network, it's not necessary to switch customers' routes with a PE router, so it provides better privacy and low resource cost on the PE router.
Since VRF is required on PEs for each CE in L3VPN, so it will require more hardware resources than L2VPN does.
Additionally, since the L2VPN provides the layer 2 connection, it allows the users to run more protocols that run on the layer 2 links, while L3VPN doesn't.

Both technologies are different enough and it is apparent that neither is going to defeat the other. From an ISP perspective, this makes it possible to use them according to his own strategies and market requirements. From a customer perspective, both MPLS services allow them to securely connect geographically diverse sites across a public telecommunications infrastructure at a relatively low cost.
The differences to consider from both perspectives are the following:
1. In the L2VPN case, no routing interaction occurs between the customer and service provider (CE switch forward traffic to ISP PE in layer 2 formats, customer has complete control over his policies and routing). In the L3VPN case, the customer must share (BGP/OSPF) information about his network topology (the ISP determines the policies and routing, outsourcing of routing tables can be seen as a weakness).
2. In the L2VPN case, the customer can run any type of Layer 3 protocol between his sites (non-IP protocols such as IPX or SNA could be used).
3. Operative costs for ISPs are higher when deploying L3VPN due to the resources required on the devices that work as CE and PE.
L3VPN could prevent the broadcast storm on the network, while L2VPN cannot.
The broadcast storm will heavily lower down the devices' performance, causing the whole network performance down.
I hope it helps!