The Layout builder module in Drupal core does what you need.
Note that the 2 approaches you mention can work, as well. However, if you don't need other features from Display suite, I think most people would recommend not adding such a huge module when you can accomplish your needs with core. You can also accomplish them with theming, but with significantly more work than Layout builder or Display suite.
All else being equal, I'd go with Layout builder. It lets you define and position content 'sections' and 'blocks' on a page via a User interface. Among the things you can do via this interface, you can set the number of columns, sections and blocks, and choose what content goes in each block.
Here are some instructional resources. I also include a few quick steps below.
basic steps
Give these steps a whirl. The tool is often not immediately intuitive; it's a powerful set of features with a lot of options. The docs/videos will take you much further.
Setup
- Enable modules. You can find do so on the Extend page ({yourdomain.com}/admin/modules). Put checks in the boxes next to the following:
- Layout Builder
Allows users to add and arrange blocks and content fields directly on the content.
- Layout Discovery
Provides a way for modules or themes to register layouts.
- Field Layout
Allows users to configure the display and form display by arranging fields in several columns.
- Enable Layout builder on the Manage display page of your content type:
- for this example, visit the Article Display mode at ({yourdomain.com}/admin/structure/types/manage/article/display/default)
- at the bottom of this configuration page, expand Layout options
- check the box next to Use layout builder
- for this example, select 2 columns
- click Manage layout
- in the 2nd column, click 'add block'
- select the field(s) you want to show in the 2nd column
Verify it works as you expect
- Visit an existing Article or create a new one.
- Ensure there is content in each field your layout uses. Empty fields can be set not to appear.