Hej. Jeśli to nie są "te same" obiekty i chcesz mieć połączoną listę wszystkich obiektów (o tym samym id) możesz to zrobić tak:
List<Media> media1 = Arrays.asList(new Media(1, "CD-abc"), new Media(2, "CD-cde"));
List<Media> media2 = Arrays.asList(new Media(1, "CD-xyz"), new Media(3, "CD-def"));
List<Media> sum = new ArrayList<>(media1);
sum.addAll(media2);
List<Media> result = sum.stream()
.collect(Collectors.groupingBy(Media::getId))
.values()
.stream()
.filter(v -> v.size() > 1)
.flatMap(Collection::stream)
.collect(Collectors.toList());
System.out.println("result: " + result);
Interaktywny przykład: https://programuj.pl/snippet/1fa4069d-5c90-4334-b8e9-0a37e8955603