Stencyl's biggest problem is their licensing deal - you pretty much never own a license and you are instead renting the software.
C2 gives you a much better deal - you pay once and then do whatever you do and whenever.You own the license.
Apart of all that stencyl is much more fragmented and confusing. To set up a single game entity, you have to go through a bazillion setup rooms. Compared to that C2 is much less click heavy and obvious.
Stencyl is not using it's own visual scripting system like construct2 does - it has ripped off the open source "Scratch" one. It is not as clear at construct's and things might get confusing.
Stencyl free version exports to flash only - so your game is pretty much dead - as nobody supports flash anymore - even adobe.
Construct2 free exports to html5 - which is what is replacing flash now.
pros: Stencyl does have a couple of pros. It's object oriented coding - so you can attach scripts you made to game objects. In construct2, you have to always dance around with picking a specific object by UID or a number of conditions to isolate it. This can be a problem some times - so most game engines are object oriented programming style - attaching instanced scripts to objects. In construct its the other way around with the event sheet. That is of course to some extend a matter of style/taste.
Stencyl can compile to native games and does have an editor that works in linux and mac apart of just windows - their editor is well integrated with the community asset store. These are things that construct3 might be able to sove of course - but until it's out stencyl will have the advantage there.