Amazon S3 is storage service in cloud. It is used to store large amount of data files. These files can be image files, pdf etc. like static data or these can be dynamic data that is created during runtime.
Amazon EC2 is a remote computing environment running in cloud. We can install our software and operating system on an EC2 instance. We can use it to run our servers like-Web server, Application server etc.
So S3 is a storage system where as EC2 is a computing system in AWS.