How does one force Plasma to use the iGPU in a system?

You can easily control this by setting KWIN_DRM_DEVICES env variable. Assuming your iGPU is card0 this will force KDE to render everything on iGPU first

KWIN_DRM_DEVICES=/dev/dri/card0:/dev/dri/card1

This is simply not true anymore. At least on wayland and newer hardware/drivers even on desktop.

I have both my monitor and my TV attached to NVIDIA card, but eveything is rendered on my integrated AMD iGPU on my desktop machine. KDE+Wayland and new drivers are providing reverse PRIME for free just by setting KWIN_DRM_DEVICES env variable

$ inxi -MGa
Machine:
  Type: Desktop System: ASUS product: N/A v: N/A serial: <superuser required>
  Mobo: ASUSTeK model: TUF GAMING B650M-PLUS v: Rev 1.xx
    serial: <superuser required> part-nu: SKU uuid: <superuser required>
    UEFI: American Megatrends v: 3287 date: 09/20/2025
Graphics:
  Device-1: NVIDIA GB205 [GeForce RTX 5070] vendor: ASUSTeK driver: nvidia
    v: 580.105.08 alternate: nouveau,nvidia_drm non-free: 550-580.xx+
    status: current (as of 2025-08) arch: Lovelace code: AD1xx
    process: TSMC n4 (5nm) built: 2022+ pcie: gen: 4 speed: 16 GT/s lanes: 16
    link-max: gen: 5 speed: 32 GT/s ports: active: DP-2,HDMI-A-1
    empty: DP-1,DP-3 bus-ID: 01:00.0 chip-ID: 10de:2f04 class-ID: 0300
  Device-2: Advanced Micro Devices [AMD/ATI] Granite Ridge [Radeon Graphics]
    vendor: ASUSTeK driver: amdgpu v: kernel arch: RDNA-2 code: Navi-2x
    process: TSMC n7 (7nm) built: 2020-22 pcie: gen: 4 speed: 16 GT/s
    lanes: 16 ports: active: none empty: DP-4,HDMI-A-2,Writeback-1
    bus-ID: 0c:00.0 chip-ID: 1002:13c0 class-ID: 0300 temp: 39.0 C
  Device-3: icSpring Web Camera driver: snd-usb-audio,uvcvideo type: USB
    rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-7:5 chip-ID: 32e6:9221
    class-ID: 0102 serial: 2024120914230143508
  Display: wayland server: X.org v: 1.21.1.20 with: Xwayland v: 24.1.9
    compositor: kwin_wayland driver: X: loaded: modesetting,nvidia
    alternate: fbdev,nouveau,nv,vesa dri: radeonsi
    gpu: nv_platform,nvidia,nvidia-nvswitch d-rect: 7680x2160 display-ID: 0
  Monitor-1: DP-2 pos: primary,left model: LG (GoldStar) Ultra HD
    serial: 146047 built: 2018 res: mode: 3840x2160 hz: 60 scale: 150% (1.5)
    to: 2560x1440 dpi: 163 gamma: 1.2 size: 600x340mm (23.62x13.39")
    diag: 690mm (27.2") ratio: 16:9 modes: max: 3840x2160 min: 640x480
  Monitor-2: HDMI-A-1 pos: right model: Beyond TV serial: 65536 built: 2019
    res: mode: 3840x2160 hz: 60 scale: 200% (2) to: 1920x1080 dpi: 81 gamma: 1.2
    size: 1209x680mm (47.6x26.77") diag: 1387mm (54.6") ratio: 16:9 modes:
    max: 3840x2160 min: 640x480
  API: EGL v: 1.5 hw: drv: nvidia drv: amd radeonsi platforms: device: 0
    drv: nvidia device: 1 drv: radeonsi device: 3 drv: swrast gbm:
    drv: kms_swrast surfaceless: drv: nvidia wayland: drv: radeonsi x11:
    drv: radeonsi inactive: device-2
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: amd mesa v: 25.2.7-cachyos1.2
    glx-v: 1.4 direct-render: yes renderer: AMD Ryzen 9 9900X 12-Core Processor
    (radeonsi raphael_mendocino LLVM 21.1.5 DRM 3.64 6.17.8-2-cachyos)
    device-ID: 1002:13c0 memory: 1000 MiB unified: no display-ID: :0.0
  API: Vulkan v: 1.4.328 layers: 15 device: 0 type: integrated-gpu name: AMD
    Ryzen 9 9900X 12-Core Processor (RADV RAPHAEL_MENDOCINO) driver: mesa radv
    v: 25.2.7-cachyos1.2 device-ID: 1002:13c0 surfaces: N/A device: 1
    type: discrete-gpu name: NVIDIA GeForce RTX 5070 driver: nvidia
    v: 580.105.08 device-ID: 10de:2f04 surfaces: N/A
  Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo
    de: kscreen-console,kscreen-doctor gpu: gputop, intel_gpu_top, lsgpu, lact,
    nvidia-settings, nvidia-smi wl: wayland-info,wlr-randr
    x11: xdpyinfo, xprop, xrandr