Strawberry Perl is "Open Source Perl for Windows that is exactly the same as Perl everywhere else". Vanilla Perl "provides a Perl distribution that is as close to the Perl core as possible." Strawberry Perl is built on Vanilla Perl.
Both distributions come with a C compiler so that perl modules from CPAN that use XS can be built.
What are the differences between Strawberry Perl and Vanilla Perl?
Just read the explanation on the Vanilla Perl homepage
Vanilla Perl Series
The Vanilla Perl series provides a Perl distribution that is as close to the Perl core as possible. If necessary, it may include win32-specific fixes.
Vanilla Perl is experimental and is not intended for production purposes. It is targeted to master-level Win32 Perl developers and those who wish to experiment with building their own custom Win32 Perl distributions. Vanilla Perl releases are numbered only as sequential 'builds' and will not follow any alpha/beta/release plan. This means incremental builds may be less stable than previous builds as new release configurations are tested.
Strawberry Perl Series
The purpose of the Strawberry Perl series is to provide a more practical Win32 Perl release for experienced Perl developers to experiment and test the installation of various CPAN modules under Win32 conditions, and to provide a useful platform for experienced Perl developers to start doing real work.
In addition to the modules in Vanilla Perl, Strawberry will also include the entire dependency tree for Bundle::CPAN, as well as an additional set of upgraded versions of dual CPAN/core modules that have win32-specific fixes.