How can I add fields to a block? I'm learning Drupal 8 after working with 7 for a number of years and I'm a bit unsure how to approach this. I need to be able to add a block and have it appear on a few specific pages. 

I also need to be able to add some text and a link to this block. Is there a way to add these as fields to the block that can be filled in when the block is added to the page? 

It looks like I could accomplish something similar by creating a new content type with those fields and adding it as an "Entity view" but this seems like overly complicated. 

Is there another way I'm not aware of?
You can create a Custom block type (admin/structure/block/block-content/types/add) and then add fields to it (admin/structure/block/block-content/manage/YOUR_BLOCK_MACHINE_NAME/fields). 

You will see that you have the Manage form display and Manage display tabs too like the content types, you don't need to create a content type. In Drupal 8 you can use blocks in more than one region.

Check The Block System is Finally Useful in Drupal 8 and see the video.