Hi Vit
I presume you plan to have a single boot partition that will contain your bootloader, kernel and initramfs. There are actually two kinds of boot partitions that are commonly used together:
1. The EFI system partition (ESP) contains Linux and Windows's bootloaders. It's formatted as FAT.
2. The extended boot (XBOOTLDR) partition contains kernels, initramfs's and microcode. It's formatted as anything the bootloader supports (GRUB supports FAT, ext4 and more).
If you have a single boot partition, you're actually just combining the above two. If you want to create more room, you can split it:
1. Shrink your Linux partition to create space for the extended boot partition. You can GParted from another system or bootable USB.
2. Create and format the extended boot partition.
3. Modify /etc/fstab so the ESP gets mounted at /efi and the XBOOTLDR gets mounted at /boot.
4. Mount these two partitions.
5. If this is an existing install, move the kernel, initramfs and microcode from /efi to /boot. Otherwise, install the bootloader and the kernel.
6. Re-configure your bootloader (e.g. `grub-mkconfig -o /efi/grub/grub.cfg`).
Now the large kernel and initramfs files don't take up space on the ESP that's being shared with Windows.
Alternatively, just resize the ESP. However, that breaks Windows's bootloader since the starting point of the C:\ partition moved, so you need to fix it from a Windows setup USB using bootrec. I can't help you with that.
Waldo